有如下程序: #include<iostream> using namespace std; class Base{ public: void fun(){cout<<”Base::fun”<<endl;}

admin2017-07-05  11

问题 有如下程序:
    #include<iostream>
    using namespace std;
    class Base{
    public:
    void fun(){cout<<”Base::fun”<<endl;}
    };
    class Derived:public Base{
    public:
    void fun(){
    ______________
    cout<<”Derived::fun”<<endl;
    }
    };
    int main(){
    Derived d;
    d.fun();
    return 0;
    }
    已知其执行后的输出结果为:
    Base::fun
    Derived::fun
    则程序中下画线处应填入的语句是(    )。

选项 A、Base.fun();
B、BaseI:fun();
C、Base一->fun();
D、fun();

答案B

解析 本题考查公用继承对基类成员的访问属性。在公用继承中,基类的公用成员和保护成员在派生类中保持原有的访问属性,其私有成员仍为基类私有。本题中想要输出Base::fun,则必须调用基类的公用成员函数fun,所以使用Base::fun();来调用基类的成员函数fun。
转载请注明原文地址:https://kaotiyun.com/show/pGAp777K
0

最新回复(0)