问题 单项选择题

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

A.Base.fun( );

B.Base::fun( );

C.Base->fun( );

D.fun( );

答案

参考答案:B

解析: 从打印结果可以看出,在对象d调用fun( )函数时调用了基类的fun( )函数,所以,在派生类中应该显式调用基类的fun( )函数,故应该写成:Base::fun( );。

多项选择题
单项选择题