1
A
回答
3
這意味着它是一個符合指定協議的通用對象指針。
因此:
@protocol SomeProtocol <NSObject>
- (void)someMethod:(int)a;
@end
@interface SomeClass : NSObject <SomeProtocol>
@end
將允許:
SomeClass *obj = [SomeClass new];
// call method via the protocol interface
id<SomeProtocol> iface = obj;
[iface someMethod:1];
3
它表明一類採用的協議
看到蘋果這裏文檔(以下簡稱 '<>' 內指定):https://developer.apple.com/library/ios/documentation/cocoa/conceptual/programmingwithobjectivec/workingwithprotocols/workingwithprotocols.html
順便說一下,它是阿爾語言功能而不是操作系統。你應該標註你的問題作爲objective-c
而非iOS
2
這是一個類定義(@interface
)或類型定義一個變量的一部分。它是告訴編譯器類/類型實現協議的一種方式。類實現的協議的名稱位於用逗號分隔的三角括號內。
你的情況:
id <protocolName> object;
您聲明瞭一個名爲id
實現該協議protocolName
類型的object
可變器。
協議是一個方法的集合。因此,它允許您發送由protocolName
定義的消息到object
,而不會發出編譯器發出警告。
Apple docs here。
相關問題
- 1. 使用什麼來代表撇號,大於,小於登錄Silverlight的短信
- 2. 小於(<)登錄XSLTForms/XForms
- 3. 什麼是ISecureDataFormat <TData>用於?
- 4. 用於Java的<String>是什麼?
- 5. 在shell中,「cat> somefilename << EOF」(特別是大於和小於 - 的兩個符號)是做什麼的?
- 6. For Loop。爲什麼它小於<不小於或等於<=?
- 7. 在XPath我爲什麼可以使用大於號>,但不小於-<
- 8. 什麼用於登錄ID?
- 9. 爲什麼Wordpress更改小於和大於符號?
- 10. 畫布的大小取決於什麼?
- 11. <html>元素大於<body>
- 12. 大於/小於:<>的Java語法是否是類特定的?
- 13. <body>大於它應該是
- 14. 如何防止CKEditor被剝離< and >(大於/小於)
- 15. Cassandra:包含大於或小於(< and >)
- 16. 使用小於/大於符號填充文本框(< and >)
- 17. JS不接受<>大於或小於符號
- 18. Jquery的模板和小於號(<)或大於符號(>)
- 19. 在Ruby中什麼是「等於大於」operator =>?
- 20. 什麼是JavaScript相當於寫的「如果</p> <p>不是」
- 21. std :: array <T, N>的大小是否保證等於T [N]的大小?
- 22. 爲什麼div大於字體大小?
- 23. XSLT 1.0 Foreach小於和大於
- 24. 什麼等同於C#中大小爲1(count)1的Dictionary <TKey,TValue>?
- 25. 沒有參數的`<<(雙小於)是什麼意思?
- 26. 如何添加大於,小於xml文件中的標籤?作爲示例<tag> <mark></tag>
- 27. 總是困惑於<< and >>
- 28. 爲什麼<nobr>不適用於Foundation小部件?
- 29. 什麼是<%= ... %>
- 30. 什麼是<%: %>
在Objective C或Swift中? – 2014-10-07 09:29:42