Sun Studio 12 Update 1:C++ 用户指南

6.1.3 函数模板用法

声明后,模板可以像其他函数一样使用。它们的使用由命名模板和提供函数参数组成。编译器可以从函数参数类型推断出模板类型参数。例如,您可以使用上面声明的模板,具体步骤如下所示。


double twicedouble( double item )
    { return twice( item ); }

如果模板参数不能从函数参数类型推断出,则调用函数时必须提供模板参数。例如:


template<class T> T func(); // no function arguments
int k = func<int>(); // template argument supplied explicitly