为了账号安全,请及时绑定邮箱和手机立即绑定

C++的拷贝构造,指针释放问题

C++的拷贝构造,指针释放问题

繁星coding 2019-03-30 09:32:44
先上代码,nocodenosay/*classPoint{//...};*/Point*pPoint=newPoint;//1Pointpoint;//2*pPoint=point;//3//...deletepPoint//4关于步骤1new可分解为如下://cpp为代码Point*pPoint=__new(sizeof(Point));//5if(pPoint){pPoint->Point::Point();}步骤3,是不是就是调用Point的拷贝赋值函数?步骤4删除该指针就是针对步骤5进行分配的内存进行释放?我这样理解是否有错?
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

步骤3的理解基本正确,步骤4不只是释放内存,在此之前还会先执行析构函数,基本相当于pPoint->Point::~Point();
                            
查看完整回答
反对 回复 2019-03-30
?
慕容森

TA贡献1853条经验 获得超18个赞

请问一下,执行过步骤5之后,这块内存不是仍然没有被释放吗?
                            
查看完整回答
反对 回复 2019-03-30
  • 2 回答
  • 0 关注
  • 488 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信