Effective C++ Item 34 Differentiate between inheritance of interface and inheritance of implementation

时间:2014-03-02 04:40:17   收藏:0   阅读:479

1. 成员函数的接口总是被继承. 如 Item32 所说, public 意味着 is-a, 所以对 base class 为真的任何事情对 derived class 也为真

 

2. 声明一个 pure virtual 函数的目的是为了让 derived class 只继承其接口

  但令人意外的是, 我们竟然可以为 pure virtual 函数提供定义. 这有另一种用处, 即作为 default 实现

 

3. 声明 impure virtual 函数的目的是为了让 derived class 继承接口和默认实现

bubuko.com,布布扣
class ModeA: public Airplane {
public:
    virtual void fly(const Airport& destination) {
        Airplane::fly(destination);
    }
};
bubuko.com,布布扣

Effective C++ Item 34 Differentiate between inheritance of interface and inheritance of implementation,布布扣,bubuko.com

原文:http://www.cnblogs.com/xinsheng/p/3574948.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!