摘要: 1.在operator = 中,有可能自己给自己赋值 a[i] = a[j] //潜在自我赋值, 当i = j时 *py = *px //潜在自我赋值 当py和px指向同一个地址时 2.自我赋值的不安全性 class Test{...}; class ManTest { ManTest& operator = (const ManTest& rhs) { delete p; p = new Test(*rhs.p); return *this; } private: Test *p; }; 安全问题:当*this和... 阅读全文
posted @ 2012-07-27 23:49 bizhu 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 条款九跳过了,里面的内容和我看到的内容有些出入,所以跳过条款十 令operator = 返回一个 reference to *this赋值操作=有时候用于连续的赋值操作,为了类能够连续赋值,并且高效完成可以使用 reference,重载操作符时,令返回值为reference *thisclass Test{ public: Test& operator = (const Test& obj) { ...... return *this; }}可以使用所有的相关的运算操作符 阅读全文
posted @ 2012-07-27 16:47 bizhu 阅读(176) 评论(0) 推荐(0) 编辑