模板与泛型编程
条款四十一 了解隐式接口和编译期多态
-
class和template都支持接口(interface)和多态 (polymorphism)
-
对template参数而言,接口是隐式的(implicit),基于有效表达式。多态则是通过template具体化和函数重载解析发生于编译期
条款四十二 了解typename的双重意义
- 在以下声明中,class和typename意义完全相同
template<class T> class Widget;
template<typename T> class Widget;
- 可以使用关键字typename标识嵌套从属类型名称;但不得在base class list(基类列表)或者memeber initialization list(成员初始化列表)内以它作为base class修饰符