613.cpp

来自「C++实训教程」· C++ 代码 · 共 71 行

CPP
71
字号
/*
	613.CPP
	demo 继承的constructors and calling sequences
	Written by Feng
*/
#include <iostream.h>
void fn();
class B
{
	protected:   int b;
	public:
      B():b(0){cout <<"@B()\n";}
		B (int x):b(x){cout <<"@B(int)\n";}
      ~B(){cout <<"@~B()\n";}
		void Disp()
	   {cout << "  b=" << b <<endl;}
};

class D : public B
{
 	protected:   int d;
	public:
		D ():d(0),B(0)
      {cout <<"@D()\n";}
		D (int x,int y):d(y),B(x)
      {cout <<"@D(int,int)\n";}
      ~D(){ cout <<"@~D()\n";}//if no D(),object D auto call ~B()
       void Disp()
	   {cout << "  b=" <<b<<"  d="<< d <<endl;}

};


main(void)
{
	B b(10);
	b.Disp();
	D d1(11,11);
    d1.Disp();
	D d2;
    d2.Disp();
	return 0;
}
void fn()
{
	B b(10);
	b.Disp();
	D d1(11,11);
    d1.Disp();
	D d2;
    d2.Disp();
}

/*
@B(int)
  b=10
@B(int)
@D(int,int)
  b=11  d=11
@B(int)
@D()
  b=0  d=0
@~D()
@~B()
@~D()
@~B()
@~B()
*/


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?