std::function C++ · STL
多态函数包装器,能存储任何可调用对象(函数、lambda、bind 表达式、函数对象),统一按签名调用。
怎么用
std::function<返回类型(参数类型)> 名;
小例子
std::function<int(int)> f = [](int x){ return x * 2; };
std::cout << f(3);
运行结果
6
提醒:调用空的 std::function 会抛 std::bad_function_call;有类型擦除开销
官方文档:https://en.cppreference.com/w/cpp/utility/functional/function
在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← C++全部词条