美文网首页
C++ 纯虚函数的定义

C++ 纯虚函数的定义

作者: HenryTien | 来源:发表于2017-03-10 22:16 被阅读296次
    // 纯虚函数的声明和定义
    #include <iostream>
    using namespace std;
    class A
    {
    public:
        virtual void disp() = 0;
    };
    class B : public A
    {
    public:
        virtual void disp() {
            cout << "this is form B" << endl;
        }
    };
    class C :public B {
        virtual void disp() {
            cout << "this is form C" << endl;
        }
    };
    void display(A *a) {
        a->disp();
    }
    int main() {
        
        B *pB = new B;  // 如果注释B中纯虚函数,则编译错误,因为未overiding A 中的纯虚函数
        C *pC = new C;  // 注释C中,保留B则可以编译,如果都注释,则编译错误
        display(pB);  // 取决于为B 赋值的指针类型
        display(pC);  
    
        system("pause");
        return 0;
    }
    

    错误会提示 未提供抽象类的实例

    相关文章

      网友评论

          本文标题:C++ 纯虚函数的定义

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