C++模板技术(泛型编程)
2026/5/7 6:54:37 网站建设 项目流程
template<typename T> T sum(T a,T b) { return a+b; }

以上称呼为函数模板,调用时生成模板函数

template<typename T> int sum(T a, T b) { return a + b; } template<> int sum(int * a,int* b) { return *a+*b; } int main(int agvn, char* agvc[]) { int a, b; int* pa = &a; int* pb = &b; *pa = 1; *pb = 2; printf("%d",sum(pa,pb)); return 0; }

模板特化,就是特殊处理,<int*>可省略

类模板

template<class T> class A { public: T a; void func(T b) { A::a = b; } T get() { return a; } }; int main(int agvn, char* agvc[]) { A<int> aa; aa.func(1); printf("%d",aa.get()); return 0; }

模板的优先级

三个都满足,普通函数>模板特化>函数模板,底层上没有区别。

标准模板库Standard Template Library,简称STL.

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询