C++关于new和delete运算符的应用

发布网友 发布时间:2022-04-23 03:48

我来回答

3个回答

热心网友 时间:2023-07-12 03:10

int* p=&A1;
delete p;
这肯定不行。 A1是栈里分配的内存怎么能delete呢。 每一次delete的一定是你new出来的东西

热心网友 时间:2023-07-12 03:10

delete p;
这里错了,
int* p=&A1;
这个语句只不过是普通的将A1的地址给P,不是在自由存储区里的,所以不用delete来删除。
去了这句就可以了

热心网友 时间:2023-07-12 03:11

动态分配的内存才需要delete去释放。如: int* pA1=new int(A1);

而 int* p=&A1; //不是动态分配的内存,因此不需要delete p;

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