Azurewarth 2015-09-29 06:43 采纳率: 0%
浏览 1720
已采纳

编译器合成默认拷贝构造函数问题

看《深度探索C++对象模型》遇到的问题。
P49里的例子对于bitwise copy semantics展现了memberwise的拷贝,但是后面P50下面说bitwise copy semantics不需要合成拷贝构造函数。
在P52页的两个例子中,第一个说没合成,我的理解也就是没有初始化int和char*,但之后的第二个合成了拷贝构造函数,不仅初始化了string,更初始化了int.

我又用vs测试了下,发现可以运行

class B {
public:
    int cc = 10;
};

int main() {
    B b;
    cout << b.cc << endl;
    B c = b;
    cout << c.cc << endl;
}
  • 写回答

1条回答 默认 最新

  • oyljerry 2015-09-29 14:24
    关注

    简单数据类型,可以直接用缺省构造函数,浅拷贝也没什么问题

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?