也許,這是一個非常基本的問題,但無論如何,我有一個大小爲10的數組。但是,在爲數組分配整數時,我只給出了8個元素。我可以釋放2個未使用的元素的內存嗎?陣列中的免費元素
Q
陣列中的免費元素
0
A
回答
1
不,你不能。對於動態分配,只能分配malloc
或new
的free
或delete
存儲器。完全相同的數量與完全相同的指針。對於自動變量,內存將自動釋放。
但由於這是C++,使用std::vector
代替。請。
1
這取決於你如何得到你的陣列。
如果是在自動或靜態分配存儲空間(即本地或全球)沒有什麼,你可以免費的,因爲你沒有任何分配(編譯器做了你)的數組。
如果這是一個動態分配的數組,你可以通過創建只有八個元素更小的陣列,複製原始值到它,然後釋放原始數組達到同樣的效果。這並不能保證分配給你的程序的內存量必然會下降,因爲八元素數組的分配器被允許爲更多元素分配空間。另一方面,如果數字是10000和8000,幾乎肯定會節省一些費用(儘管該標準也不能保證)。
相關問題
- 1. 設置陣列陣列中的元素
- 2. 陣列中的陣列打印元素
- 3. 免費動態分配陣列C
- 4. 試圖免費結構元素
- 5. 免費():在第二個元素
- 6. 從陣列中移除元素並避免在javascript中崩潰
- 7. 陣列中缺少元素
- 8. 免費超鏈接矩陣
- 9. 查找陣列中的元素列表
- 10. 陣列元素的Verilog OR
- 11. PHP的SimpleXML元素陣列
- 12. 編輯元素的陣列
- 13. 如何比較陣列元素與ArrayList中另一個陣列的元素?
- 14. 根據另一個陣列的空元素從陣列中刪除元素
- 15. 指針陣列與元素陣列
- 16. 查找陣列中不在另一個陣列中的元素
- 17. 計算陣列中陣列中元素的數量
- 18. 陣列中的每個元素注入到不同的陣列
- 19. 陣列對象中的訪問元素
- 20. mongoid更新陣列中的元素
- 21. Javascript:陣列中的移動元素
- 22. 陣列索引位置中的元素
- 23. 陣列中的流星元素
- 24. jq解析子陣列中的元素
- 25. 替換陣列中元素的位置
- 26. 填寫陣列中缺少的元素
- 27. 訪問指針陣列中的元素
- 28. 並行移除陣列中的元素
- 29. 從Json Api陣列中的元素
- 30. 陣列中元素的確切位置
你必須使用數組嗎?爲什麼不是其他數據結構,如向量? – berkay 2012-08-15 21:02:51
是的。我想知道,如果這可以使用數組 – user502808 2012-08-15 21:03:28
完成取決於你指的是什麼數組。因爲這個原因,內建的語言數組並沒有太多用處。所以我們有更常用的替代對象(比如std :: vector)。 – 2012-08-15 22:24:56