deque, 只是依据在deque上而已)
39 明智而审慎地使用private继承
由于访问限制的原因, 编译器无法自动将private继承的派生类转型为基类, 且派生类无法使用基类的成员
因此private...这个规矩也就是Java等语言中对接口这种多重继承性质的类有特殊设计的原因
当用到这种虚基类作为接口时, 一般都采用公有继承, 因为其没有实际变量, 那么各种接口函数都应该是设计给用户使用的
7 模板与泛型编程..., 因此我们无法直接在模板类中调用模板化的基类的成员
有三种方法处理这个问题:
在调用基类函数前加上this指针this->foo();, 用指针进行多态调用
用using声明式using Base成员函数模板接受所有兼容类型
模板之间并没有什么类似继承关系的固有关系, 无法自动在继承类之间进行隐式转换, 智能指针类通过底层的转型来模拟这种关系
方法是编写用于指针间类型转换的构造模板,...称为成员函数模板(member function template)
智能指针类编写了非explicit的构造函数, 在自身底层是T类型的指针时, 接受一个U类型的指针作为构造函数的参数, 然后通过原始指针本身的转换和继承形式将