C++ Template学习笔记之函数模板(6)——模板显式特化
来源:互联网 发布:mars java官网 编辑:程序博客网 时间:2024/05/16 11:54
在模板显式特化定义(explicit specialization definition)中,先是关键字template和一对尖括号<>,然后是函数模板特化的定义。该定义指出了模板名、被用来特化模板的模板实参,以及函数参数表和函数体。如:
// max.h
template <class Type>
Type Max(Type t1,Type t2)
{
return (t1>t2 ? t1 : t2);
}
// const char*显式特化:覆盖了来自通用模板定义的实例
typedef const char *PCC;
template<> PCC Max< PCC >( PCC s1, PCC s2 )
{
return (strcmp(s1,s2)>0 ? s1 :s2);
}
// user.c
int main()
{
// 调用实例:int Max< int >( int, int );
int i = Max( 10, 5 );
// 调用显式特化:const char* Max< const char* >( const char*, const char* );
const char *p = Max( "hello", "world" );
cout<<"i: "<<i<<" "<<"p: "<<p<<endl;
return 0;
}
- C++ Template学习笔记之函数模板(6)——模板显式特化
- C++ Template学习笔记之函数模板(6)——模板显式特化
- C++ Template学习笔记之函数模板(1)——函数模板定义
- C++ Template学习笔记之函数模板(7)——重载函数模板
- C++ Template学习笔记之函数模板(1)——函数模板定义
- C++ Template学习笔记之函数模板(7)——重载函数模板
- C++ Template学习笔记之函数模板(4)——显式模板实参
- C++ Template学习笔记之函数模板(4)——显式模板实参
- C++ Template学习笔记之函数模板(3)——模板实参推演
- C++ Template学习笔记之函数模板(5)——模板编译模式
- C++ Template学习笔记之函数模板(3)——模板实参推演
- C++ Template学习笔记之函数模板(5)——模板编译模式
- C++ Template学习笔记之函数模板(2)——函数模板实例化
- C++ Template学习笔记之函数模板(2)——函数模板实例化
- C++ template学习笔记之模板特化
- [转]C++ Template学习笔记之函数模板(5)——模板编译模式
- C++Template学习笔记之函数模板
- 模板显式特化之template<>语法
- C++ Template学习笔记之函数模板(2)——函数模板实例化
- C++ Template学习笔记之函数模板(3)——模板实参推演
- SAP 与oracle ERP之比较[转载]
- C++ Template学习笔记之函数模板(4)——显式模板实参
- C++ Template学习笔记之函数模板(5)——模板编译模式
- C++ Template学习笔记之函数模板(6)——模板显式特化
- C++ Template学习笔记之函数模板(7)——重载函数模板
- 面向对象编程,我的思想
- 这样的情人节
- 如何成为一名优秀的数据库开发专家
- 交叉线、直通线背后掩藏着什么?
- IE中发生line-height属性的bug
- 日语自我介绍
- 对String的深刻理解