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

已经归还了内存 而且地址p已经为空了 为什么还是会出现p的内存大小呢

Line *p=new Line(1,2,3,4);

delete p;

p=NULL;

cout<<sizeof(p);

正在回答

1 回答

delete是归还你申请的内存,但是这个指针依然还是存在的,置空是为了防止成为野指针,NULL本质也是零,而这个零并不代表数字零,而表示的是内存单元的编号零,所以p还是占用四个字节,因为指针变量本身只占四个字节。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(下)
  • 参与学习       70898    人
  • 解答问题       534    个

封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通

进入课程

已经归还了内存 而且地址p已经为空了 为什么还是会出现p的内存大小呢

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号