有下列程序: #include<iostream> using namespace std; class TestClass { public: virtual void fun1()

admin2010-12-16  21

问题 有下列程序:      #include<iostream>      using namespace std;      class TestClass      {      public:      virtual void fun1()      {      cout<<"fun1TestClass";      }      virtual void fun2()      {      cout<<"fun2TestClass";      }      };      class TeSt

选项 A、fun1TeStClass1 fun2TeStClass     
B、fun1TestClass1 fun2TestClass1
C、fun1TeStClass fun2TeStClass     
D、fun1TestClaSSfun2TestClaSS1

答案A

解析  TestClass为基类,TestClass1是TestClass的派生类。基类中的fun1和fun2被定义为虚函数,C++规定,当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数,所以派生类中的fun1和fun2也是虚函数。本题从main主函数入手,首先定义了TestClass类型的对象ob1和指针p,然后又定义了TestClass1的对象obj2。指针指向对象obj2,然后调用其成员函数fun1(),即输出“fun1TesClass1”。
转载请注明原文地址:https://jikaoti.com/ti/OTL0FFFM
0

最新回复(0)