填空题 下列程序的运行结果是 1
#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这个重载的虚函数时,根据当前指向可确定调用子孙的同名虚函数。