求助:关于里氏代换原则

anitashiwo 发布于 2012/02/16 14:46
阅读 182
收藏 0

里氏代换原则:任何基类适用的地方,子类都可以替换基类。结果不变

class CBase
{
public:
     virtual void Show() {cout<<"基类显示"<<endl;}
};

class CChild : public CBase
{
public:
     virtual void Show() {cout<<"子类显示"<<endl;}
};

void main()
{
    CBase *p = new CBase();  //若此行换成CChild* p = new CChild();
                        //结果不是不一样了吗?难道这样就违背了里氏代换原则?   
    p->Show();
}

对于这里   

加载中
0
Z.han
Z.han
那个结果是抽象的概念吧,不是运算的结果。
运算结果一样还替换干嘛!
0
a
anitashiwo
大神们 快来人啊
返回顶部
顶部