fibがautoはさすがにダメだった。当たり前のような気もする。
あと参照によるキャプチャじゃないとSEGV。
#include <iostream> #include <functional> using namespace std; int main() { function<int (int)> fib = [&](int n) -> int { if (n < 2) { return n; } else { return fib(n - 2) + fib(n - 1); } }; for (int i = 0; i < 10; i++) { cout << fib(i) << endl; } return 0; }
自分自身もキャプチャできるのかー。
0
1
1
2
3
5
8
13
21
34
続行するには何かキーを押してください . . .