With a template's offsetting and member template, the overload function call operator successfully implements Delegate, which can bind a normal function, or bind object and its member functions compiled under CygnUWIN, and a delegate contains The use of multiple functions, but I believe it is very simple, from std :: list, you can use a class of Cygun, MY_DELEGATE D2 = My_DELEGATE (T, & Test :: f); ^ If writing & t, it will result in The internal error, there is no way, I have written the program to be empty, and I have not been put on the BBS. I have never endured the various calls in Win32. I have no consideration, but I don't have it. It is trouble, no matter // test.cpp: defines the entry point for the console application. // #include template
// Function Traits, used to extract the return type of the function
// Function traits, used to extract the return type of class member function
template struct function_traits {typedef OT object_type; typedef RT result_type;}; template struct function_traits {typedef OT object_type; typedef RT result_type; typedef AT argument_type; typedef AT first_argument_type;}; template struct function_traits {typedef ot object_type; typef rt Result_type; typef at1 first_argument_type; type;};
// the class a common function to the function type into a member of the specified class type compatible template struct to_member_function_pointer {}; template struct to_member_function_pointer {Typedef r (ot :: * type) ();}; template struct to_member_function_point {typedef rt (Ot :: * Type (At);}; Template Struct To_member_function_point {typedef rt (Ot :: * Type) (AT1, AT2 );}; Template Struct To_Member_Function_Pointer {typedef RT (Ot :: * Type) (AT1 , AT2, AT3);}; // Translate into Const member functions