1.如果定义了两个缺省构造函数,vc只回给出warning.
2.如果有默认参数的缺省构造,(如果你给了第一个默认的话)所有传递参数都要有默认植
,否则报错.不过如果是第一个参数的默认值没有给出的话,编译器却看不出问题,但是没有
试过这种情况构造函数能不能正常工作.
/*
构造函数:用来初始化对象的数据成员,与类同名的成员函数
缺省构造函数自动初始化对象
构造函数可以为内联函数,重载函数(参数的个人和参数的类型不同其中有一个满足就可以了),带缺省的形 参值得函数(跟普通函数一样)
构造函数没有返回值
class 类名
{ public :
类名(形参);//构造函数
类名(类名 &对象名);//拷贝构造函数 (&调用)
...
};
类名:: 类名(类名 &对象名)//拷贝构造函数的实现
拷贝构造函数:是一种特殊的构造函数,其形参为本类的对象引用。
拷贝构造函数并没有拷贝数据,两个对象共享一份数据(属于位拷贝,称之为浅拷贝)
2.如果有默认参数的缺省构造,(如果你给了第一个默认的话)所有传递参数都要有默认植
,否则报错.不过如果是第一个参数的默认值没有给出的话,编译器却看不出问题,但是没有
试过这种情况构造函数能不能正常工作.
/*
构造函数:用来初始化对象的数据成员,与类同名的成员函数
缺省构造函数自动初始化对象
构造函数可以为内联函数,重载函数(参数的个人和参数的类型不同其中有一个满足就可以了),带缺省的形 参值得函数(跟普通函数一样)
构造函数没有返回值
class 类名
{ public :
类名(形参);//构造函数
类名(类名 &对象名);//拷贝构造函数 (&调用)
...
};
类名:: 类名(类名 &对象名)//拷贝构造函数的实现
拷贝构造函数:是一种特殊的构造函数,其形参为本类的对象引用。
拷贝构造函数并没有拷贝数据,两个对象共享一份数据(属于位拷贝,称之为浅拷贝)