我在某处看到了以下代码:
class Person {
private:
string *customerName;
public:
Person() {customerName = new string;}
void setCustomerName(char *s) {*customerName = s;}
};
int main()
{
Person person1;
Person person2;
person1.setCustomerName("Malcolm");
person2 = person1;
}
person1 和 person2 都指向同一个内存吗?如果 person1 被删除,或者 person2 被删除,会发生什么?它会导致损坏其他对象吗?还是内存泄漏?