当变量是本地变量时是否需要删除?

Sch*_*poo 2 c++

如果我在使用"new"的函数中为本地字符数组分配新内存,是否有必要在函数返回之前使用delete?

函数返回后是否会自动删除?

das*_*ght 8

是的,这是必要的:如果你在动态存储分配一些与newnew[],编译器不知道你有没有计划通过分配对象一起在函数返回之后,所以它是你的责任来调用delete(或delete[])免费您分配的对象.

您可以使用unique_ptr<T>以避免delete显式调用,但unique_ptr<T>代表您的析构函数将进行调用.