动态多态 运行期间 面向对象 纯虚函数 强制实现
更难调试,运行更快 静态多态 编译期间 泛型 必须实现那些接口 非强制实行
份文件写注意
template<
typename T>
class Demo
public:
template<
typename X>
void Assign(
const X val);
template<
typename T>
template<
typename X>
void Assign(
const X val);
不同类型调用
Demo<
int> demo_int;
Demo<
double> demo_double;
demo_int.Assign(demo_double.GetVal());
全特化,编译时生成,是个全新的类,需要全部重写
template<typename
T>
class Demo
template<>
//特化int类型需要重新写
class Demo<int>
偏特化,特化一部分,其余的代码编译器还是会帮你生成
template<>
class Demo<int *>::Demo()//偏特化Demo()构造,特化一部分
模板类继承
template<typename
T>
class sonDemo::public Demo<T>
模板类单例模式,当包装器 把模板类做成单利模式,里面包装的类都会变成包装器
转载请注明原文地址: https://ju.6miu.com/read-26514.html