classtemplate 类模板

function template函数模板

C++学习8 模板类

C++学习8 模板类class可以是typename

函数模板在使用的时候可以不用特别声明,编译器可以进行参数推导

member template成员模板

C++学习8 模板类

在模板内,又是一个模板

C++学习8 模板类

鲫鱼和麻雀的pair可以拷贝到鱼类和鸟类的pair中,反之则不能。

C++学习8 模板类

父类的指针可以指向子类,但是子类的指针不能指向父类。指针上移

specialization 模板特化

泛化就是模板

特化意思就是作为一个设计者,可能会面对一些独特的类型进行特殊处理

C++学习8 模板类

一般的泛化:接受一个key

C++学习8 模板类

 

partial specialization 模板偏特化——个数的偏

C++学习8 模板类

第一行的叫做模板参数

虽然有两个模板参数,但是第一个T已经被绑定。从左到右

partial specialization 模板偏特化——范围的偏

C++学习8 模板类

将任意类型缩小成指针

template template parameter 模板模板参数

C++学习8 模板类

使用:希望定义一个指定类型的模板。list还是模糊的

C++学习8 模板类

传入一个智能指针,并且希望使用第一个参数作为智能指针的类型

C++学习8 模板类

上面的list已经是int类型了

 

相关文章: