问题 填空题

下列程序的输出结果为2,请将程序补充完整。 #include <iostream> using namespace std; class Base { public: ______void fun() {cout<<1;} }; class Derived:public Base { public: void fun(){cout<<2;} }; int main() { Base*p=new Derived; p->fun(); delete p; return 0; }

答案

参考答案:virtual

解析: 此题考查的是虚函数的概念。在C++语言中,一个基类指针可以用于指向它的派生类,而且通过这样的指针调用虚函数时,被调用的是该指针实际所指向的对象类的那个重定义版本,这样的调用叫做多态调用。题目中只有把基类定义为虚函数,才能满足多态性的要求。

填空题
单项选择题