void hello(string str1, string str2){
cout<<str1<<"\n"<<str2<<endl;
}
class TEST{
public:
TEST(){};
~TEST(){};
int sum(int x, int y){
return x * y;
}
};
int main(){
bind(hello, "hello bind...", "my namne is zhangbuda")();
int ans = bind(&TEST::sum, TEST(), 10, 20)();
cout<<ans<<endl;
cout<<"twice"<<endl;
bind(hello, placeholders::_1, placeholders::_2)("hello bind...", "my namne is zhangbuda");
cout<<bind(&TEST::sum, TEST(), placeholders::_1, placeholders::_2)(30, 40);
function<int (int, int)> func1 = bind(&TEST::sum, TEST(), placeholders::_1, placeholders::_2);
cout<<"\n"<<func1(22, 33);
return 0;
}