读书人

MyClass a=b;跟MyClass a(b)效果是一样

发布时间: 2012-09-01 09:33:02 作者: rapoo

MyClass a=b;和MyClass a(b)效果是一样的
惊奇的发现,如果比较完善的类,都定义了operator=(const MyClass&)以及Myclass::MyClass(const MyClass&)

在声明后面直接赋值的,不会调用operator=,而是MyClass(const MyClass&)


我又孤陋寡闻了

[解决办法]
没错,因为a都不存在,所以是构造不是赋值
[解决办法]
定义这两个,就可以有效防止 浅拷贝嘛.

读书人网 >C++

热点推荐