有如下程序: #include using narnespace std; class Base{ public: virtual void function1(){rout

admin2015-09-14  20

问题 有如下程序:
    #include
    using narnespace std;
    class Base{
    public:
      virtual void function1(){rout<<’0’;}
      void function20{rout<<’1’;}
    };
    class Derived:public Base{
    public:
      void function1()  {rout<<’2’;}
      void function2()  {rout<<’3’;}
    };
    int mm(){
      Base*P=new Derived();
      p->function1();
      P->function2();
      return 0;
    };
    运行时的输出结果是(    )。

选项 A、01
B、21
C、03
D、23

答案B

解析 函数ftmetion1()在基类Base中定义为虚成员函数,而在派生类Dervied中重新进行了定义,输出字符2,函数function2()在基类Base中定义虚成员函数,在主函数中使用指向基类的指针变量p访问:function2()时,输出1。
转载请注明原文地址:https://kaotiyun.com/show/3qNp777K
0

最新回复(0)