function复习

#include <iostream>
#include <functional>
using namespace std;

int fun(int a)
{
    std::cout << a <<std::endl;
    return 1;
}

int fun1(std::function<int(int)>* f)
{
    auto fun =    *f; 
    fun(1);
    return 1;
}

int main()
{
    std::function<int(int)> funf;//模板的参数是你要绑定函数的原型
    //第一个参数是要绑定的函数,后面是参数,参数必须要全部写出,后面一个是表示位置信息,表示
    //通过funf调用时传参的位置,_1表示fun1的第一个参数,一般很少不按顺序来,绑定指定的参数最多的是this
    funf = std::bind(fun, placeholders::_1);
    fun1(&funf);
    getchar();
    return 0;
}

 

posted @ 2014-09-20 01:18  zzyoucan  阅读(148)  评论(0编辑  收藏  举报