美文网首页C++ 杂记
C++ 派生类 小例

C++ 派生类 小例

作者: 赵者也 | 来源:发表于2017-01-06 21:23 被阅读7次

    注意:本文中代码均使用 Qt 开发编译环境

    #include <QCoreApplication>
    #include <QDebug>
    
    class B0 {
    public:
        virtual void display(){
            qDebug() << "B0::display()";
        }
    };
    
    class B1:public B0 {
    public:
        void display(){
            qDebug() << "B1::display()";
        }
    };
    
    class D1:public B1 {
    public:
        void display(){
            qDebug() << "D1::display()";
        }
    };
    
    void fun(B0* ptr){
        if(NULL != ptr){
            ptr->display();
        }
    }
    
    int main(int argc, char *argv[])
    {
        QCoreApplication a(argc, argv);
    
        B0 b0;//声明基类对象
        B0 *p = NULL;//声明基类指针
        B1 b1;//声明派生类对象
        D1 d1;
    
        p = &b0;
        fun(p);//调用基类成员
    
        p = &b1;
        fun(p);//调用派生类成员
    
        p = &d1;
        fun(p);//调用派生类成员
    
        return a.exec();
    }
    

    运行结果:
    B0::display()
    B1::display()
    D1::display()

    大家可以参照运行结果去体会和理解

    相关文章

      网友评论

        本文标题:C++ 派生类 小例

        本文链接:https://www.haomeiwen.com/subject/ypuxbttx.html