如果我在目標C中創建/分配C++對象,以便Objective C對象使用C++對象的指針,並且代碼混合在一起,ARC也會管理C++對象並釋放/釋放它們。 C++對象的指針位於不可訪問的對象C對象中會發生什麼?並提出了從內存中刪除的候選人?如果我混合使用Objective C中的C++代碼管理C++對象的內存,ARC會處理它嗎?
5
A
回答
4
據Cocoa Core Competencies: Object life cycle,你應該在dealloc
方法釋放資源。對於「原始」C++指針,這意味着要寫一個delete
表達式。
ARC的一部分是插入retain
和release
調用,使得dealloc
在對象不再可訪問時發生。
0
對於C++對象的C++機構用於和如果使用ARC他們不會自動計數。 Objective-C對象使用ARC進行管理(如果不使用ARC,則可以手動計數)。
相關問題
- 1. 的NSString和Objective-C內存管理ARC
- 2. Objective C內存管理與ARC
- 3. objective-c對象內存管理
- 4. Objective-C正確的內存管理和用ARC清理
- 5. Objective C內存管理混亂
- 6. C++類中Objective-c對象的內存管理
- 7. 內存管理(objective-c)
- 8. Objective C NSMutableDictionary內存管理
- 9. objective c內存管理
- 10. 如何處理Objective-C中單例模式的內存管理?
- 11. iOS中的Open-CV內存管理(Objective-c與ARC)
- 12. 當C++代碼用作C#類時,如何爲C#對象管理內存?
- 13. Objective-C - 使用塊和內存管理?
- 14. Objective-C:理解ARC
- 15. 內存管理 - C#VS Objective C?
- 16. 我應該釋放這個嗎? Objective-C中的內存管理
- 17. Objective-C的內存管理問題
- 18. Objective-C的性能和內存管理
- 19. Objective-C 2.0的內存管理
- 20. Objective-C的吸氣內存管理
- 21. 混合Objective-C和C++代碼
- 22. C++類,對象和內存管理
- 23. 替代的結構Objective-C對象(ARC)
- 24. 在Windows上用Visual Studio混合C#代碼和未被管理的C++代碼
- 25. 返回一個Objective-C對象時的內存管理
- 26. 在Objective-C中分配對象,內存管理
- 27. objective-c內存管理 - 對象保證存在多久?
- 28. C++中的內存管理。
- 29. C++內存管理對象矢量
- 30. C/C++中的內存管理範圍
我喜歡這個問題的想法(和upvoted它),但它會很好,如果你能夠明確你的問題是什麼。 – Dustin
我猜,誰分配將不得不刪除,Objective C機制不會自動釋放給你。特別是因爲指針並不意味着動態內存 –