bind 函數在頭文件 functional中
調用bind的一般形式:
auto newCallable = bind (callable, arg_list);
newCallable為一個新可調用對象,callable為原可調用對象,當調用newCallable時,會調用callable並傳遞arg_list參數。
arg_list參數
參數列表包含 _n 占位符和其他參數,_n為新可調用對象的參數,其他為原調用對象的參數,占位符定義在std::placeholders命名空間中。
auto g = bind (f,a,b,_2,c,_1); //g是有兩個參數的可調用對象
g (_1,_2); //將g的兩個參數傳遞給f調用執行
假定調用 g(x,y),則會調用f(a,b,y,c,x)
綁定引用參數
使用ref或cref來綁定,cref會創建一個const引用。