我有一個非ARC項目,我添加了一個新文件併爲其設置了ARC編譯器標誌(-fobjc-arc)。當我打電話給[object release]時;在文件中,沒有編譯器錯誤拋出。我需要確定這個文件確實啓用了ARC,我怎麼能證明這一點?謝謝。我如何證明ARC正在工作?
0
A
回答
6
在運行時沒有檢查ARC。不過,你可以在編譯時檢查它:
#if !__has_feature(objc_arc)
//Do the old stuff
#endif
希望有幫助。
+0
正是我在找的東西。我將編譯器標誌設置在錯誤的目標順便說一句...這是問題... – HackyStack
0
試試這個
#if __has_feature(objc_arc)
// ARC is On
NSLog(@"ARC on");
#else
// ARC is Off
NSLog(@"ARC off");
#endif
希望它可以幫助你..
+0
這是完美的,從技術上講,所有3個答案都是正確的... – HackyStack
1
此外,如果你可以調用-release
,ARC是關閉的。一旦打開,編譯器就會抱怨任何嘗試手動內存管理的情況,例如調用-retain
,-release
或[super dealloc]
。
相關問題
- 1. 麻煩證明mod_wsgi正在工作
- 2. 如何證明__udelay()在我的ARM嵌入式系統上正常工作?
- 3. 這是如何工作在ARC
- 4. ARC正在iOS 6中工作,但無法在iOS5.1中工作
- 5. Java:我如何正確證明$?
- 6. 我的ARC應用程序如何在iOS 3.x中工作?
- 7. ARC以及它如何工作。
- 8. 如何在非ARC上聲明委託
- 9. 如果我們有ARC,實現屬性如何工作
- 10. 在textview中證明文本無法正常工作
- 11. 最簡單的Gruntfile.coffee將證明咕嚕聲正在工作?
- 12. 如何工作正在工作
- 13. 如果聲明工作不正常?
- 14. 如果聲明不能正常工作
- 15. 如果聲明無法正常工作
- 16. 如果不indexpath工作正常聲明
- 17. 我如何才能讓鑰匙串在iOS 5中與ARC一起工作?
- 18. 明文NSDate如何工作?
- 19. oracle聲明如何工作?
- 20. 該版本如何在基於ARC的項目中工作
- 21. 在iOS中如何保留UIView與ARC一起工作?
- 22. 爲什麼用execCommand證明無法正常工作?
- 23. 我不明白我的表單無法正常工作
- 24. 異或在球拍,我不明白它是如何工作的
- 25. 我不明白paintComponent如何在Java中工作
- 26. 如何驗證Amazon Kinesis Python客戶端正在工作
- 27. 如何驗證mod_rewrite是否正在工作
- 28. 如何測試模型屬性驗證正在工作?
- 29. 如何驗證Oracle的ValidateConnection屬性正在工作?
- 30. 如何驗證壓縮在Kafka 0.8.2.2中是否正常工作?
可能的重複:http://stackoverflow.com/questions/9462372/how-do-i-know-whether-the-compiler-has-arc-support-enabled –
沒有。 dealloc仍然在那裏處理CF清理。 – uchuugaka