动态数组构造函数是否调用删除?

Does dynamic array constructor call delete?

如果我这样做:

int da [];
...
da = new[2];
...
da = new[1];

我有内存泄漏吗?我应该这样做吗:

da.delete;
da = new[1];

改为?

除非您遇到工具问题,否则无需致电 delete。任何时候对整个数组进行赋值时,前一个数组都会被删除。

但是,由于 SystemVerilog 具有自动内存管理,因此不需要 何时 将内存释放回 OS。