《Effective C++》

条款34:区分接口继承和实现继承

Public继承由两部分组成

函数接口继承

函数实现继承

三种可能面对的继承

derivedclass只继承成员函数的接口

derivedclass同时继承函数的接口和实现,但又希望能够覆写它们所继承的实现

derivedclass同时继承函数的接口和实现,但不允许覆写任何东西

总结:

接口继承和实现继承不同。在public继承下,derivedclasses总是继承baseclass的接口。

Purevirtual函数只具体指定接口继承。

简朴的impurevirtual函数具体指定接口继承及缺省实现继承。

Non-virtual函数具体指定接口继承以及强制性实现继承。