2010-10-10 103 views

回答

4
  1. 你的意思是定義不聲明(從問題刪除)的對象
  2. 是的,你可以做到這一點。
  3. 不,你不需要去破壞它,因爲它會自動銷燬。內存分配在堆棧上,無論如何都會被重用。編譯器甚至可以在很多情況下優化它。 如何您是否可以重新分配內存?
8

  1. ob是一個堆棧分配對象,所以其自身的生命週期自動管理。它在你申報的地方建造,銷燬在"}"
  2. 由於每個while迭代是獨立{ ... }範圍,該對象將被構造和銷燬每次迭代。
3

不會。ob的範圍結束於右大括號。編譯器在超出範圍時自動調用基於堆棧的對象的析構函數。

5

不,其範圍被限制在while循環。

在每次迭代
3

,創建一個完全新的對象。恰巧他們都有相同的名字xyz。在最後的迭代中,當前對象通過其釋放器被銷燬,並且在下一次迭代中創建具有相同名稱的新對象。所以你的代碼非常好。 HTH

相關問題