下面程序的结果是   #include   class A   {   int a;   public:   A():a (1){}   void showa(){cout<<a;}   };   class B   {   int a;   public

admin2017-10-17  33

问题 下面程序的结果是
  #include
  class A
  {
  int a;
  public:
  A():a (1){}
  void showa(){cout<<a;}
  };
  class B
  {
  int a;
  public:
  B():a (2){}
  void showa(){cout<<a;}
  };
  class C:public A, public B
  {
  int a;
  public:
  C():a (3){}
  void showa(){cout<<a;}
  };
  void main()
  {
  C c;
  c.showa();
  }

选项 A、1
B、2
C、3
D、程序有错误

答案C

解析 类A,类B,中都有showa()函数,类C继承后再次重写showa()函数就解决了继承的二义性,这时c.showa()函数显示的就是类C中的showa()的值。
转载请注明原文地址:https://kaotiyun.com/show/8XAp777K
0

最新回复(0)