C++和Java的继承——构造函数问题
C++ 【1】声明子类变量 B b;a.如果子类没有显示调用父类含参数的构造函数,那么在子类实例化过程中, ---顺序: 父类无参(默认)构造函数-->子类被调用的构造函数。 b.如果子类显示调用了父类的含参构造函数,那么在子类实例化过程中, ---顺序: 父类有参构造函数-->子类被调用的构造函数。 实例: class A { public: A() { printf("A(void) \n"); }//父类 默认构造函数 A(int d) { printf("A %d\n", d); }//父类 有参构造函数 ~A() { printf(" ~A \n"); }//父类 析构函数 }; class B : public A { public: B(){ printf("B(void) \n");//子类 默认构造函数 } B(int x) : A(x) { printf("B \n"); //子类 有参构造函数 } ~B() { printf("~B \n"); } //子类 析构函数 }; int main(int argc, char* argv[]) { B c;...