模板工作原理:
-使用template<typename T>定义函数模板或者类模板
-体化(instantiation):使用特定的模板实际参数,生成真正的模板函数和模板类,然后你就可以调用这样的模板函数,或者使用模板类来生成对象
-编译模板函数和模板类,生成最终程序代码
模板代码一半放在头文件中
模板特点:
-抽象性:模板代码高度抽象,是函数和类的模范
-安全性:形式检查能够发现大多数形式失配问题
-通用性:函数和类模板定义一次,按需生成函数和类的实体
-易用性:接口相对直观且高度一致
-效率:减少冗余代码,提高编程效率;通过编译优化,提升程序执行效率
模板的主要用途:
-函数模板:构造一个函数集,实现不依赖特定数据结构的抽象算法
-类模板:构造类集,实现抽象数据结构
-元编程:构造在编译期执行的运算,提升程序执行效率
转载于:https://www.cnblogs.com/liuzh21/p/7492001.html