【问题标题】:ZipKit and iOS5 - synthesized vs. user defined setter/getterZipKit 和 iOS5 - 合成与用户定义的 setter/getter
【发布时间】:2011-09-02 18:24:44
【问题描述】:

在使用最新 iOS5 的 ZipKit (https://bitbucket.org/kolpanic/zipkit/wiki/Home) 编译项目时,我看到以下警告:

无法将合成的 setter/getter 与用户定义的 setter/getter 配对

有什么想法吗? 有问题的代码是:

- (void) setInvoker:(id)i {
_invoker = i;
if (_invoker) {
    irtsIsCancelled = [self.invoker respondsToSelector:@selector(isCancelled)];
} else {
    irtsIsCancelled = NO;
}

}

【问题讨论】:

    标签: ios zip


    【解决方案1】:

    与 iOS 5 无关,所以我会回答。

    invoker @property 是用nonatomic 声明的吗?可能不会。

    在这种情况下,运行时会生成一个原子 getter,而您已经编写了一个非原子 setter。编译器会警告你。

    【讨论】:

    • 嗯,它与 iOS 5 没有直接关系,但这个警告是 LLVM 3.0 中的新警告我认为。然后 OP 可能在升级到 iOS 5 SDK 时看到了警告。
    • @gcamp 这是 LLVM,但在 3.0 中并不新——它从 1 开始就存在了 我认为
    • 是的,你是对的,它确实是 LLVM。在 @property 声明中添加非原子可以修复它 - 谢谢!
    猜你喜欢
    • 1970-01-01
    • 2011-03-14
    • 2023-03-29
    • 2011-12-08
    • 1970-01-01
    • 1970-01-01
    • 2017-10-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多