1.如果类中有指针成员,并且给指针动态分配了地址,在析构函数中释放了该地址。那么就必须编写自定义的 拷贝构造函数 和 拷贝赋值运算符函数。否则,使用合成的函数时,在拷贝初始化 和 类间赋值 时, 编译器仅仅是对对象的简单复制(包括指针),即指针的值简单的拷贝,这样两个对象的指针成员指向同一个地址。当退出对象的作用域时,析构释放动态内存,此时,相同的地址将被释放多次,出现错误。
一点思考
最新推荐文章于 2024-05-07 14:07:57 发布