首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

Delete怎么分别删除指针和对象

发布网友 发布时间:2022-04-24 16:00

我来回答

1个回答

热心网友 时间:2022-04-24 06:04

恩,你已经注意到了delete 指针实际上释放了指针所指的堆内存,但指针本身是一个32位(在32位机器上)的无符号整数。其值是对象的首地址,这个值并没变。也就是说,你用delete后,不但指针任然存在,而且其内容都没有变换。他本身的释放在超过他生命周期的时候销毁。然而现在指针所指的内存已经不可用了,再次操作其内容将会发生内存错误(比如再次delete)。所以,安全的做法是让指针值等于NULL(如果指针是NULL,delete多少次都可以!)。如果你在释放指针后,又立即分配新的值,那么赋值NULL步骤多余。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com