复制构造函数的初始化列表应用
#include <iostream>
class Type
{
public:
Type(const Type ¶) : data(100)
{
}
explicit Type(int para)
{
this->data = para;
}
int getData(void)
{
return this->data;
}
private:
int data;
};
int main()
{
Type a(9);
Type aa(a);
std::cout << aa.getData() << std::endl;
}好吧,首先我承认,之前确实不知道这个语法的存在。偶然试之以后,想了想,但是没有发现它有什么用武之地(也就是在我看来编译器或者标准可以没有这种语)。想请教一下,有什么场景,能体现出复制构造函数的初始化列表的用武之地。或者告诉我,它确实就是没有用而且也存在了。
...全文
相关推荐
c++基础语法:构造函数初始化列表
构造函数需要初始化的数据成员,不论是否显示的出现在构造函数的成员初始化列表中,都会在该处完成初始化,并且初始化的顺序和其在声明时的顺序是一致的,与列表的先后顺序无关
C++中成员初始化列表的使用
C++中成员初始化列表的使用适合初学者
复制构造函数
复制构造函数
编程思想14章构造函数的初始化表达式
编程思想的第十四章,代码,本人亲测通过后才上传的 这段是介绍编程思想14章构造函数初始化表达式表
成员初始化列表与构造函数体中的区别详细解析
无论是在构造函数初始化列表中初始化成员,还是在构造函数体中对它们赋值,最终结果是相同的。不同之处在于,使用构造函数初始化列表的版本初始化数据成员,没有定义初始化列表的构造函数版本在构造函数体中对数据成员赋值


