问题 填空题

下列程序的运行结果是______。 #inclUde(iostream.h) Class A {public: Virtual void use(){cout<<“inA\n”;}}; class B:public A {public: virtual void use(){cout<<“inB\n”;}}; class C:public B {public: Virtual void use(){cout<<“in C\n”;}}; void main() { A *obj; Obj=new C; Obj->use(); delete obj; }

答案

参考答案:in C。

解析: 本题考查虚函数和多态性。原本obj指向祖先类,随后被赋值,指向新的子孙类,则在使用use这个重载的虚函数时,根据当前指向可确定调用子孙的同名虚函数。

填空题
问答题 简答题