如何刪除[]“知道”操作數組的大小?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 關注
- 533 瀏覽
添加回答
舉報
0/150
提交
取消
