在删除后重用指向数组的指针

Reusing a pointer to array after deletion

本文关键字:数组 指针 删除      更新时间:2023-10-16

代码如下:

char * asd = new char[10];
delete [] asd;
asd = new char[20];

问题:

  1. 指针上的删除操作不会删除指针所指向的分配内存吗?

  2. 是正确的重复使用指针后执行删除它吗?

指针上的delete操作不会删除已分配的内存被指针指向?

是的。

是正确的重复使用指针后执行删除它?

是的,这很好,只要你将指针设置为另一个有效对象的地址,这就是你在第二次调用new[]时所做的。

请注意,你的问题标题"删除后重用数组",与你的问题无关。你不是在重用一个已经被删除的数组,你只是在重用一个曾经指向一个已经被删除的数组的指针。