如何删除[]“知道”操作数组的大小?Foo* set = new Foo[100];// ...delete [] set;你不能把数组的边界传递给delete[]..但这些信息储存在哪里?标准化了吗?
3 回答
三国纷争
TA贡献1804条经验 获得超7个赞
郎朗坤
TA贡献1921条经验 获得超9个赞
int* i = new int[4];
sizeof(int)*5
int *temp = malloc(sizeof(int)*5)
sizeof(int)
*temp = 4;
i
i = temp + 1;
i
delete[] i;
int *temp = i - 1;int numbers_of_element = *temp; // = 4... call destructor for numbers_of_element elements... that are stored in temp + 1, temp + 2, ... temp + 4 if needed free (temp)
- 3 回答
- 0 关注
- 559 浏览
添加回答
举报
0/150
提交
取消
