执行如下程序将输出( ): #include using namespace std; class Base { public: Base(){cout

admin2013-09-11  84

问题 执行如下程序将输出(    ):
#include
    using namespace std;
    class Base
    {
    public:
    Base(){cout<<“BB”;fun();)
    void fun(){cout<<“Bfun”;}
    };
    class Derived:public Base
    {
    public:
    Derived(){cout<<“DD”;)
    void fun(){cout<<“Dfun”;)
    };
    int main(){Derived d;retum 0;)

选项 A、DD
B、BBDfunDDDfun
C、BBBfunDD
D、DDBBBfun

答案C

解析 C++中创建一个类的实例时,如果该类存在基类,将首先执行基类的构造函数,然后执行该类本身的构造函数。本题中首先执行类Base的构造函数,所以将先输出“:BB”,然后调用基类成员函数fun(),输出“Bfun”,最后调用子类Derived的构造函数输出“DD”。
转载请注明原文地址:https://kaotiyun.com/show/QsBD777K
0

最新回复(0)