7.5.3

本文探讨了C++中构造函数的使用规则,包括没有默认构造函数时的影响,以及何时需要显式定义构造函数等问题。

7.43

class NoDefault {
public:
    NoDefault(int i) { }
};

class C {
public:
    C() : def(0) { } 
private:
    NoDefault def;
};

7.44

不合法,NoDefault没有默认的构造函数,所以vector<NoDefault> vec(10)将不能初始化

7.45
合法,C有默认的构造函数

7.46
a. 不一定 有时候编译器提供的类可以满足要求而不用自己写
b. 不正确 默认构造函数是在没有提供初始值的时候使用的,有时候有参数的构造函数也会提供默认值,也定义了默认构造函数
c. 不正确
d. 只有当我们没有定义任何构造函数 ,编译器才会这么做

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值