template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2> ReturnType string_function_2params( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2) { return string_function_2params_helper< CharType, ReturnType, CharFunction, WchartFunction, Param1>( funcChar, funcWchart, param1, param2, ( const CharType *)NULL); }
///////////////////////////////////////////////////////// // three parameters
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3> ReturnType string_function_3params_helper( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, const wchar_t *) { return funcWchart( param1, param2, param3); }
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3> ReturnType string_function_3params_helper( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, ...) { return funcChar( param1, param2, param3); }
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3> ReturnType string_function_3params( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3) { return string_function_3params_helper< CharType, ReturnType, CharFunction, WchartFunction, Param1>( funcChar, funcWchart, param1, param2, param3, ( const CharType *)NULL); }
///////////////////////////////////////////////////////// // four parameters
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3, class Param4> ReturnType string_function_4params_helper( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, Param4 param4, const wchar_t *) { return funcWchart( param1, param2, param3, param4); }
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3, class Param4> ReturnType string_function_4params_helper( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, Param4 param4, ...) { return funcChar( param1, param2, param3, param4); }
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3, class Param4> ReturnType string_function_4params( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, Param4 param4) { return string_function_4params_helper< CharType, ReturnType, CharFunction, WchartFunction, Param1>( funcChar, funcWchart, param1, param2, param3, param4, ( const CharType *)NULL); }
///////////////////////////////////////////////////////// // five parameters
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3, class Param4, class Param5> ReturnType string_function_5params_helper( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, Param4 param4, Param5 param5, const wchar_t *) { return funcWchart( param1, param2, param3, param4, param5); }
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3, class Param4, class Param5> ReturnType string_function_5params_helper( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, Param4 param4, Param5 param5, ...) { return funcChar( param1, param2, param3, param4, param5); }
template< class CharType, class ReturnType, class CharFunction, class WchartFunction, class Param1, class Param2, class Param3, class Param4, class Param5> ReturnType string_function_5params( CharFunction funcChar, WchartFunction funcWchart, Param1 param1, Param2 param2, Param3 param3, Param4 param4, Param5 param5) { return string_function_5params_helper< CharType, ReturnType, CharFunction, WchartFunction, Param1>( funcChar, funcWchart, param1, param2, param3, param4, param5, ( const CharType *)NULL); } 
说明:本教程来源互联网或网友上传或出版商,仅为学习研究或媒体推广,wanshiok.com不保证资料的完整性。
2/2 首页 上一页 1 2 |