c++类问题作答
构造函数学习总问
- 如何对数据成员进行初始化?
1通过定义set成员函数进行赋初值
2通过构造函数进行传参并在函数体内初始化
3通过构造函数进行传参并在初始化成员列表中初始化
4通过无参构造函数在初始化成员列表中赋常量
5通过无参构造函数在函数体内赋初值 - 构造函数的作用?
在完成创建对象的同时对数据成员进行初始化。 - 构造函数定义的特点
1名字与类名字相同
2无返回值
3参数可有可无 - 什么情况下调用默认构造函数?
当自定义类中没有构造函数时,在定义类类型的对象时 - 构造函数可不可以重载?重载需要注意的问题有哪些?
可以重载
防止出现二义性,如:
class point
{
int a,b;
public:
point(){}
point(int x=1,int y=2):a(x),b.(y){}
};
- 什么情况下必须使用初始化成员列表?
1数据成员为常量
2数据成员为引用类型
3数据成员为没有无参构造函数的类的对象