当`new [0]`时使用`delete []`

时间:2017-08-14 19:57:17

标签: c++ arrays memory-management dynamic

我动态分配了一个数组(text可能已作为函数中的参数传递):

unsigned int n

当我完成使用它时:

int * ar = new int [n];

但是,delete [] ar; 会发生什么? 分配n = 0 0与分配完全相同吗? 在这种情况下,当我致电int时会发生糟糕的事情吗?

1 个答案:

答案 0 :(得分:3)

new零大小的数组和delete它是可以的。这比任何事情更方便,因为这意味着您不必为0案例编写单独的条件。