免費橋接陷阱
回答
沒有太多'陷阱'。但是這是一個基於C的語言,所以不是每個項目都是從CFType開始的。例如一個ABRecordID實際上只是一個32位整數。所以它不是CFType。要將ABRecordID添加到數組,您可以這樣做:
NSMutableArray * newArray = [NSMutableArray array];
ABRecordID someID = 24875247; //你可以在某處撥打電話
[newArray addObject:[NSNumber numberWithInt:someID]]; //如果希望回數通過將INT成一個NSNumber
再後來增加了一個ABRecordID到陣列:
ABRecordID thatID = [[newArray objectAtIndex:0]的intValue]; //檢索數字,然後詢問它的int值。
如果您閱讀了關於CFType的文檔,它會一直說它是否與某些NS *對應的橋接免費。
來自文檔的報價: 「CFNumber與Cocoa Foundation的對手NSNumber是」免費橋接「,這意味着Core Foundation類型在橋接Foundation對象的函數或方法調用中是可互換的。一個方法,你可以看到一個NSNumber *參數,你可以傳遞一個CFNumberRef,並且在一個你看到一個CFNumberRef參數的函數中,你可以傳遞一個NSNumber實例,這個事實也適用於NSNumber的具體子類。可可在您的申請中獲得更多有關免費橋接的信息。「
但是C中的int絕對不是CFNumber。
希望幫助,
--Tom
謝謝湯姆 - 這對我有很大的幫助 – chaostheory 2009-06-02 03:56:33
- 1. 免費橋接Mono Touch
- 2. 免費橋接和內存管理
- 3. 是否適用支持免費橋接?
- 4. 陷阱
- 5. C#SNMP陷阱接收
- 6. 與sql連接陷阱
- 7. 軟件陷阱vs硬件陷阱
- 8. 從MS Access的空陷阱的陷阱
- 9. 解析陷阱
- 10. FileSystemWatcher的陷阱
- 11. ReSharper的陷阱
- 12. 春季陷阱
- 13. PyThreadState_SetAsyncExc陷阱?
- 14. 擊:陷阱
- 15. Java JIT陷阱
- 16. 形式 - 陷阱
- 17. SetTimer()陷阱
- 18. 陷阱WM_SETFOCUS消息
- 19. 陷阱寫的RubyGems
- 20. 生成SNMP陷阱
- 21. 陷阱ORA錯誤
- 22. C++模板陷阱
- 23. rmi回調陷阱?
- 24. 安卓:AlarmManager陷阱
- 25. 混淆SNMP陷阱
- 26. Singleton Design Pattern:陷阱
- 27. 陷阱os.Exit在golang
- 28. 清除SNMP陷阱
- 29. Thread.local的陷阱[:current_user]
- 30. Firefox 6 JavaScript陷阱
可以顯示一些代碼?我無法收集你的意思是「似乎無法使用......在NSArray內」。你不能將它們添加到數組中?一旦你做到了,你不能使用它們嗎? – catsby 2009-06-01 18:47:47