【发布时间】:2015-06-15 18:01:13
【问题描述】:
我了解到默认的复制赋值运算符(编辑:更正,不是复制构造函数)不处理 const 和引用。因此,如果一个类包含这样的成员,那么编译器将不会为它生成默认的复制构造函数。这个说法正确吗?为什么const不能处理?
此外,如果一个类包含指针作为成员,编译器会生成一个复制构造函数吗?我知道默认的拷贝构造函数只做浅拷贝,但编译器至少会生成一个拷贝构造函数,对吗?
非常感谢您的澄清!
【问题讨论】:
-
你可能学错了。
-
您将
copy constructor与copy assignment混淆了。只有后者不能用 const 或 reference 成员完成。
标签: c++ pointers reference constants copy-constructor