第7章 模板与泛型编程
Item41:了解隐式接口和编译器多态
class与template都支持接口与多态
多态通过template具现化和函数重载解析发生在编译器。
Item42:了解typename的双重意义
1.template<class T>
template<typename T>
以上两条语句意义完全相同。
2.请用关键字typename标识嵌套从属类型名称;但是不得在base class list(基类列)或者成员初始列(member initialization list)内以他作为base class修饰符。
Item43:学会处理模板化基类内的名称
????????
Item44:将与参数无关的代码抽离 templates
???????
Item45:运用成员函数模板接受所有兼容类型
Item46:需要类型转换时请为模板定义非成员函数
内部相关的支持函数胡定义为class template内部的friend函数。
Item47:请使用traits classes表现类型信息
input
output
forward
bidirectional
random access
这些struct之间的继承关系是逐级is-a的关系,input是最基本的一个
Item48:认识template元编程
???????????????
Item49:定制new与delete
**注意:STL容器所使用的的heap内存是由容器所拥有的分配器对象管理,不是被new、delete直接管理。**