[英]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.