目录
思维导图大纲:
1. 什么是模板?
模板是泛型编程的一种体现,同一类代码可以多次使用!简单打个比方说,模板就相当于活字印刷术,有了这项技术我们就可以高效的拓印不同的书籍;模板也是如此:有了模版我们可以减少大量重复的代码编写,例如:我们需要写一个swap函数,需求是要交换int类型和float类型等等,如果按照原本函数重载的写法我们仍然需要写多个swap函数,有了模版我们就可以根据不同情况生成不同的swap
2. 模板的分类
区别:函数模版和模版函数 / 类模版和模版类
函数模版是一个模版是一种工具,模版函数是通过模版实例化生成的一个具体的函数对象。同理类模版和模版类也是如此
2.1 函数模板
2.1.1 用法
// 函数模版
template<class T>
void Swap(T& data1, T& data2)
{
T tmp =