- #include <iostream>
- struct box
- {
- int a;
- int b;
- int c;
- int d;
- };
- template <class T> //函数模板
- T MaxValue (T x,T y)
- {
- return x > y ? x:y;
- }
- template <> box MaxValue (box a,box b) //函数模板具体化
- {
- return a.a >b.a ? a : b;
- }
- using namespace std;
- void main()
- {
- cout <<MaxValue(555,666)<<endl;
- cout <<MaxValue(1.1,0.5)<<endl;
- box a={1,2,3,4};
- box b={2,3,4,5};
- cout <<MaxValue(a,b).a<<endl; //重载函数模板具体化
- }
C++ Primer Plus 第五版 复习题7 函数模板 函数模板具体化
函数模板与特化示例
最新推荐文章于 2025-12-03 14:22:43 发布
本文介绍了一个使用C++实现的通用函数模板MaxValue,该模板能够比较两个相同类型数值的最大值。此外,还展示了如何针对特定类型的结构体进行模板特化,以满足结构体之间的比较需求。
1950

被折叠的 条评论
为什么被折叠?



