【发布时间】:2013-05-08 07:21:49
【问题描述】:
这是有效的语法吗?
@property (nonatomic, strong) Class<SomeProtocol> myClass;
SomeProtocol 定义为:
@protocol SomeProtocol <NSObject>
@required
+ (BOOL)isAllowed;
@end
我想强制执行编译时检查,以便编译器在未实现所需isAllowed 方法的类(例如UIViewController)用于myClass 属性时报错。
附:当我传入一个不符合 SomeProtocol 协议的类时,我没有收到编译器警告或错误。
【问题讨论】:
-
@property (nonatomic, strong) id<SomeProtocol> myClass;这是有效且经常使用的 -
问题更多的是关于 Class
而不是 id 。
标签: ios objective-c protocols