c++11使用function对象和lambda表达式实现返回函数的函数
#include<iostream> #include<functional> using namespace std; function<int(int)> addn(int n) { auto f = [=](int m){return m + n;}; return f; } int main() { function<int(int)> f = addn(3); cout << f(1) << endl; cout << f(10) << endl; auto g = addn(12); cout << g(1) << endl; cout << g(10) << endl; }
老实为人,踏实为学