Re: [問題]C++ 九九乘法表 如何用if來寫呢??
※ 引述《StubbornLin (Victor)》之銘言:
: → StubbornLin:我比較期待全用STL的版本 XDD 02/02 15:44
沒有問題.
#include<cstdio>
#include<functional>
#include<algorithm>
using namespace std;
using namespace std::placeholders;
int main(int argc, char** argv) {
int a[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
auto mul = bind(multiplies<int>(), _1, _2);
function<int(int,int)> print = bind(printf, "%d * %d = %d\n", _1, _2, mul);
auto b = bind(bind1st<function<int(int,int)>,int>, print, _1);
auto b2 = bind(for_each<int*, function<int(int)>>, a, a+9, bind(b, _1));
for_each(a, a+9, b2);
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.33
推
02/02 19:33, , 1F
02/02 19:33, 1F
推
02/02 20:11, , 2F
02/02 20:11, 2F
我用gcc version 4.5.0 20100128 (experimental) 沒問題
VS2008把auto換成function<一大串>應該也可以
→
02/02 20:13, , 3F
02/02 20:13, 3F
沒有. auto是c++0x(c++1x?), function和bind是c++ tr1的東西
※ 編輯: AstralBrain 來自: 140.112.30.33 (02/02 20:23)
→
02/02 20:29, , 4F
02/02 20:29, 4F
推
02/02 20:34, , 5F
02/02 20:34, 5F
→
02/02 20:34, , 6F
02/02 20:34, 6F
不一定要template, 反正就是代換成typeof(等號右邊)
這是懶人的好幫手啊XDD
→
02/02 20:35, , 7F
02/02 20:35, 7F
→
02/02 20:35, , 8F
02/02 20:35, 8F
→
02/02 20:37, , 9F
02/02 20:37, 9F
→
02/02 20:37, , 10F
02/02 20:37, 10F
推
02/02 21:00, , 11F
02/02 21:00, 11F
※ 編輯: AstralBrain 來自: 140.112.30.33 (02/02 21:04)
推
02/02 23:16, , 12F
02/02 23:16, 12F
推
02/02 23:57, , 13F
02/02 23:57, 13F
推
02/03 13:05, , 14F
02/03 13:05, 14F
推
02/03 18:07, , 15F
02/03 18:07, 15F
推
09/11 13:00, , 16F
09/11 13:00, 16F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 11 之 13 篇):