繁体   English   中英

id <> delegate这个语法是什么意思?

[英]id<>delegate what is the meaning of this syntax?

我不知道这是什么意思?我认为这与协议有关,但是有人可以告诉我这种语法的正确含义是什么吗?

id<aKeypadDelegate> delegate;

id是对类未知的Objective-C对象的引用,因此委托可以是任何Objective-C对象。 当您找到此:

@property (nonatomic, weak) id<SomeProtocolHere> delegate;

...这意味着委托可以是实现SomeProtocolHere协议(“符合”)的任何Objective-C对象。

嗯,您编辑了问题,所以我的答案完全不同...我已将其重写。

id表示“任何对象”。 这只是指向特定RAM的一个数字。

id<Foobar>表示“符合Foobar协议的任何对象”。

协议定义对象必须具有的方法的列表。

注意协议仅在编译时检查,而在运行时不检查。 在代码实际执行时,它不会执行任何检查以查看指定RAM位置上存在的内容。 并非所有错误都会被编译器捕获。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM