问题 单项选择题

有如下程序: #include<iostream> using namespace std; class Base{ public: void output( ){cout<<l;} virtual void Print( ){cout<<’B’;} }; class Derived:public Base{ public: void output( ){cout<<1;} void Print( ){cout<<’D’;} }; int main( ){ Base*prt=new Derived; prt->output( ); prt->Print( ); delete prt; return 0; } 程序的输出结果是

A.1B

B.1D

C.2B

D.2D

答案

参考答案:B

解析: 基类指针可以指向派生类对象,但是只能访问从基类中继承来的成员。派生类对从基类继承来的成员可以被重新定义。故打印1D。

选择题
填空题