C++-----------------------------------------------------std::bind

来源:互联网 发布:淘宝评价网站 编辑:程序博客网 时间:2024/05/18 01:12

使用:在调用某个函数的时候,希望传入的参数个数不一样,但是重写有没有必要


格式:auto newCallable=std::bind(callable,arg_list);


例子:


void changeValue(int a,int b,int c)

{


}


int main

{

//在这里使用bind

//使用n_bind1(x)的时候,x在_1对应的地方和已有的参数一起传入,相当于changeValue(4,6,x)

auto n_bind1=std::bind(changeValue,4,6,_1);

//使用n_bind2(x,y)的时候,x在_1、y在_2对应的地方和已有的参数一起传入,相当于changeValue(8xy)

auto n_bind2=std::bind(changeValue,8,_1,_2);

//使用n_bind3(x,y,z)的时候,x在_1、y在_2、z在_3对应的地方和已有的参数一起传入,相当于changeValue(xyz)

auto n_bind3=std::bind(changeValue,_1,_2,_3);

return 0;
}



1 0
原创粉丝点击