有如下程序: #include <iostream> using namespace std: class A{ public: virtual void funcl( ){cout<<"A1";} void func2

admin2013-05-30  27

问题 有如下程序:    #include <iostream>    using namespace std:    class A{    public:    virtual void funcl( ){cout<<"A1";}    void func2( ){cout<<"A2";}    };    class B:public A{    public:    void funcl( ){cout<<"B1";}    void fllnc2( ){cout<<"B2";}    };    int main( ){    A*p=new B;    p->funcl( );    p->func2( );    return 0:    }    运行程序,屏幕上将显示输出  

选项 A、B182
B、A1A2
C、BlA2
D、AlB2

答案B

解析 基类指针可以指向派生类对象,但是指针只能访问继承自基类的成员,而不能访问派生类中的新增加成员或重新定义后的成员。故p->funcl( );p->func2( );都执行基类的成员函数,打印A1A2。
转载请注明原文地址:https://kaotiyun.com/show/PBNp777K
0

最新回复(0)