条款11:在operator中处理“自我赋值”

自我赋值出现在对象自己给自己赋值的过程中。 有时候容易察觉,有时候不容易察觉。特别是当在有继承关系的类对象中,一个基类的引用或指针可以指向子类的对象。 class Book{}; class Store{ private: Book *pb;//指向一个从heap分配的对象 } Store & Store::operator = (const Store & st) { delete…

Continue Reading →