C问题特别是不会用默认构造函数初始化默认构造函数就是没参数的构造函数class Complex{private:int real;int image;public:void display();Complex(){ //这就是默认构造函数 木有参数 用来初始化C1 real=20;image=40;};Complex(int x,int y):a(x),b(y){ //这个是传参数进来的构造函数 — 构造函数的一个重载用来搞定 C2的初始化}Complex(Complex &c) {//再来一个/拷贝构造函数初始化C3 Real=c.Real;Image=c.Image;}~Complex(){};}void display(){cout}void main(){Complex c1();Complex c2(0.0);Complex c3(c1);c1.display();c2.display();c3.display();}c没有合适的默认构造函数可用class CustomerData : public PersonData{private:int customerNumber;bool mailingList;};这个类是继承PersonData而来,但是基类却不是default constructor,所以要在继承类明确声明构造函数,把基类对象构造class CustomerData : public PersonData{public:CustomerData(string s,string f):PersonData(s,f){}private:int customerNumber;bool mailingList;};
