C++ 中让对象的拷贝成为 显式 的
摘要:
C++中对象的拷贝一般使用拷贝构造函数,从而对象的拷贝大多是隐式的,使用拷贝构造函数的隐式拷贝很方便,但是编译器无法识别不必要的拷贝,虽然我们人类可以识别这些不必要的拷贝,比如在写函数原型时,忘了加&,就会引发一个这样的非必要拷贝。如果这种情况很严重,我们可以禁用拷贝构造函数和赋值函数(声明成private),然后再提供一个显式拷贝函数,如:class HeavyObject { HeavyObject(const HeavyObject&); HeavyObject& operator=(const HeavyObject&);public: void clo 阅读全文
posted @ 2012-03-11 21:10 能发波 阅读(193) 评论(0) 推荐(0)