动态数组构造函数是否调用删除?
Does dynamic array constructor call delete?
如果我这样做:
int da [];
...
da = new[2];
...
da = new[1];
我有内存泄漏吗?我应该这样做吗:
da.delete;
da = new[1];
改为?
除非您遇到工具问题,否则无需致电 delete
。任何时候对整个数组进行赋值时,前一个数组都会被删除。
但是,由于 SystemVerilog 具有自动内存管理,因此不需要 何时 将内存释放回 OS。
如果我这样做:
int da [];
...
da = new[2];
...
da = new[1];
我有内存泄漏吗?我应该这样做吗:
da.delete;
da = new[1];
改为?
除非您遇到工具问题,否则无需致电 delete
。任何时候对整个数组进行赋值时,前一个数组都会被删除。
但是,由于 SystemVerilog 具有自动内存管理,因此不需要 何时 将内存释放回 OS。