有人能告訴我究竟NSCFTimer是什麼?當我向NSTimer詢問計時器時我會得到它。 我的問題是,我試圖檢查一個對象(應該是一個NSTimer,注意單詞「所謂」,這就是爲什麼我檢查)是類NSTimer的對象,它似乎並不工作。這個「NSCFTimer」以任何方式阻礙了這個過程嗎?困惑於NSCFTimer ...它是什麼?
1
A
回答
7
NSCFTimer
是Foundation和CoreFoundation框架的實現細節。它是NSTimer
的子類,因此isKindOfClass:
將工作得很好。
儘管如此,它的確提出了一個問題,即爲什麼你可能會引用一個可能或可能不是Timer的對象。定時器的唯一來源是在框架內創建或定義明確的方法。因此,這種不確定性既非典型又常常表明潛在的設計問題。
4
bbum說得很好,但要更直率一點:只要你需要知道,NSCFTimer
與NSTimer
是一樣的,你不必擔心。 :)
的技術原因:NSTimer
是免費電話與CFRunLoopTimer
橋接。當您實例化NSTimer
時,該類中的代碼將用Core Foundation不透明C類型實例替換您的實例CFRunLoopTimer
。 CFRunLoopTimer
將Objective-C運行時標識爲NSCFTimer
類的實例,因此NSTimer
的實例類將報告爲NSCFTimer
。
有關免費橋接的更多信息,Core Foundation以及您甚至不知道它的使用頻率,請參閱Apple's documentation。
+0
解釋它。謝謝。 – Vervious 2010-07-06 03:42:26
相關問題
- 1. 困惑於選擇什麼牌照
- 2. 困惑於什麼gsub在做
- 3. 困惑於libjpeg:jpeg_read_scanlines
- 4. 困惑於httpd
- 5. 困惑於macports
- 6. 困惑於JavaScript
- 7. 困惑於節儉,它究竟做了什麼?
- 8. gcc困惑什麼是左值?
- 9. 困惑於recv()
- 10. 困惑於JNDI
- 11. 困惑於event.type Lua
- 12. 困惑於iPhone 7
- 13. 困惑於教程
- 14. 寬度設備寬度什麼是什麼?困惑
- 15. 困惑於SQL分配
- 16. 困惑於getchar()函數
- 17. 困惑於android控件
- 18. 關於[NSDate date]的困惑
- 19. iPhone:關於NSAutoreleasePool的困惑
- 20. 關於printf輸出困惑
- 21. 關於CTE的困惑
- 22. 關於FROM_UNIXTIME的困惑
- 23. 困惑於MFC/.net/WPF
- 24. 困惑於re.compile的行爲
- 25. 關於GAC的困惑
- 26. 困惑於「respond_to?」方法
- 27. Task.Factory.StartNew - 關於池的困惑
- 28. 困惑於Html.AttributesFor(m => m.Name))
- 29. 關於回調的困惑
- 30. 關於MusicService的困惑
我正在使用一個數組來同時存儲計時器和其他對象......我改變了它,這不是一個好主意。 :) 謝謝。 – Vervious 2010-07-05 18:34:18
非常好。在我們的編程生涯的某個時刻,我們都屈服於超能力的吶喊。 – bbum 2010-07-05 18:43:39