Objective-c 中 SEL 类型的属性
Posted
技术标签:
【中文标题】Objective-c 中 SEL 类型的属性【英文标题】:Property with type SEL in Objective-c 【发布时间】:2011-12-24 21:19:45 【问题描述】:我想声明一个类型为 SEL
的属性,如下所示:
@property (nonatomic, assign) SEL mySelector;
这里的“assign
”正确吗?或许assign
可以省略?
【问题讨论】:
【参考方案1】:assign 是这里的正确注释。您可以将 assign 用于任何原始类型。替代方案(弱、强/保留)依赖于指向对象的属性来发挥作用。我相信编译器甚至不会让你为此声明错误的属性类型。如果你真的想要,你可以省略分配,因为它是默认值。
【讨论】:
已确认并 +1,此@property (nonatomic, weak) SEL tapSelector;
导致错误,“具有‘弱’属性的属性必须是对象类型。”以上是关于Objective-c 中 SEL 类型的属性的主要内容,如果未能解决你的问题,请参考以下文章
Objective-C Runtime 运行时之三:方法与消息(转载)
在 Swift 3 的值类型中访问 Objective-C 类别的属性(关联参考)