总第101篇
本文主要全面梳理总结一下C++11
中的std::function
的用法,以方便其他伙伴们参考与学习。
1.std::function
std::function
是一组函数对象包装类的模板,其实例可以对普通函数
、lambda表达式
、函数指针
、类的成员函数
及其它函数对象
等进行存储、复制和调用操作,它实质上是实现了一个泛型的回调机制。
std::function
不管其实例类型是什么样的,其调用形式是一样的,如下:
返回值类型(实参1,实参2,实参3...)
在使用std::function
的过程中,要包含的头文件为:
#include <functional>
using namespace std;
using namespace std::placeholders
//bind的时候会用
2.std::bind
std::bind
一般接受一个函数,生成一个具有一个或多个参数的函数对象,例如如下形式:
int f<