浅拷贝的问题
默认提供的拷贝构造就是浅拷贝,如果拷贝的对象中含有成员指针变量指向堆区中的内存空间,那么就会出现两个对象中的成员指针变量指向同一块堆区空间,当方法执行结束后,对象就会被释放,调用析构函数(析构函数中存在释放在堆区开辟的内存空间),就会存在一块内存空间被多次释放的问题。
解决办法
自己写拷贝构造,让拷贝构造后的对象中的成员指针变量指向一块新的内存空间。
//
// Created by Administrator on 2023/4/25.
//
#include
using namespace std;
// 深拷贝和浅拷贝
class Person {
public:
int p_age;
int *p_weight;
Person() {
cout
服务器租用托管,机房租用托管,主机租用托管,https://www.e1idc.com