模板是实现代码重用机制的一种工具,实质就是实现类型参数化,即把类型定义为参数。 
C++提供两种模板:函数模板,类模板

函数模板

template <typename T>

T myMax(T a, T b)

{
return a>b?a:b;
}

调用

//函数
char max1 = myMax<char>('a','b');
cout<<"myMax:"<<max1<<endl;

类模板

template <class T>
class MyMax
{
private:
T a;
T b;
public:
MyMax();
MyMax(T x1,T x2)
{
a=x1;
b=x2;
}
T myMaxFuc()
{
return a>b?a:b;
}
};

调用

//定义对象
MyMax<int> max2(1,2);
cout<<"MyMax:"<<max2.myMaxFuc()<<endl;

可以定义多模板的参数 
可以定义多种类型的形参。

template<typename T1, typename T2>
class CTest
{
...
};

对象实例化时:

CTest testA<int, float>;
CTest testB<double, string>

参考链接:

模版使用详解

C++模板template用法总结

最新文章

  1. arcgis for flex全国地图天气预报的具体实现过程解析
  2. div的一些易出错地方
  3. Elasticsearch 连接查询
  4. 核心动画基础动画(CABasicAnimation)关键帧动画
  5. IOS 视频分解图片、图片合成视频
  6. 1066: [SCOI2007]蜥蜴 - BZOJ
  7. Spring 使用注解方式进行事务管理
  8. TableView不显示没内容的Cell怎么办?
  9. 移动端Web页面问题
  10. AFNetWorking网络请求
  11. TCP和UDP的&quot;保护消息边界&quot; (经典)
  12. 201521123055 《Java程序设计》第14周学习总结
  13. Linux下转换文件从GBK到UTF-8
  14. RTC子系统
  15. 网络爬虫构造出URL的列表数据
  16. 创建一个yum源,rpm安装二进制包
  17. kafka7 探索生产者同步or异步发送消息
  18. JQuery Easyui引入easyui-lang-zh_CN.js后出现乱码的问题解决方法
  19. oracle中实现自增id
  20. ArcGIS案例学习笔记-CAD数据自动拓扑检查

热门文章

  1. .net与.net core学习目录
  2. js 评分
  3. 零元学Expression Blend 4 - Chapter 33 简单轻松的学会如何使用Visual States(下)
  4. ASP.NET获取客户端、服务器端基础信息
  5. ThreadPoolExecutor的一点理解 专题
  6. Newtonsoft.Json高级用法之枚举中文转义
  7. 使用Visual Studio开发Python
  8. coci2018 题解
  9. Qt 不规则窗体 – 鼠标点击穿透(Linux也可以,有对x11的配置的方法)
  10. nginx(一) nginx详解