输出?
#include
using namespace std;
template
T max (T &a, T &b)
{
return (a > b)? a : b;
}
template <>
int max (int &a, int &b)
{
cout << "Called ";
return (a > b)? a : b;
}
int main ()
{
int a = 10, b = 20;
cout << max (a, b);
}
(A) 20
(B)叫20
(C)编译器错误答案: (B)
说明:上面的程序是模板专门化的示例。有时候,我们希望特定数据类型的函数/类模板具有不同的行为。为此,我们可以为该特定数据类型创建专用版本。
这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。