首页 > 代码库 > 默认构造函数的作用
默认构造函数的作用
// 首先定义一个No_default类。
class No_default
{
public:
No_default (const string&); // 声明了一个构造函数,但是却没有默认构造函数!
private:
int a;
string b;
};
// 定义第二个类,其中有一个No_default类型的成员。
class B
{
public:
No_default my_mem; // 类B也没有构造函数!
};
B b; // 试图定义一个B类型的对象错误的,因为不能为B合成默认构造函数,因为其中有No_default(没有默认构造函数)类型的成员!
class C
{
public:
C () {} // 试图定义C的默认构造函数是错误的,因为No-default类的成员c_mem没有初始值!
private:
No_default c_mem;
};
class D
{
public:
D (): d_mem(0) {} // 定义了正确的默认构造函数,成员都有初始值(显示地给d_mem初始化为0)!
private:
No_default d_mem;
};
注意: 在类中如果定义了其他构造函数,最好也提供一个默认构造函数!
默认构造函数的作用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。