c++ bind的简单使用 实例

bind是绑定,我接触过的高级语言js、swift中也有类似的应用。一个函数把另一个函数作为参数。

下面是我的demo,运行完,就知道是怎么回事了。

void func(int i, int j,int x,int y)
{
    cout << i << "--" << j << "--" << x <<"--"<< y<< endl;

}
auto f_bind = bind(func,10,20, _2,_1);

int main()
{
    f_bind(6,99);
    f_bind(11,22);

    cout << "end in main \n" << endl;
    return 0;
}

运行结果如下:

可以看出

f_bind = bind(func,10,20, _2,_1);

bind后面第一个参数是绑定的函数名,后面是func对应的4个参数。

_2,代表f_bind的第二个参数传入

_1,代表f_bind的第一个参数传入

 

posted @ 2016-07-29 22:48  知吾猪  阅读(366)  评论(0编辑  收藏  举报