Xcode 6如何修复自动属性合成中未声明的标识符的使用? [英] xCode 6 how to fix "Use of undeclared identifier" for automatic property synthesis?

查看:36
本文介绍了Xcode 6如何修复自动属性合成中未声明的标识符的使用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用xCode6 Beta 3,遇到一个问题,在访问自动合成的实例变量时,以前编译得很好的代码(Xcode 5.1.1或xCode6 Beta 2)突然开始给我"使用未声明的标识符"错误:

- (void)setFinished:(BOOL)finished {
    [self willChangeValueForKey:@"isFinished"];
    _finished = finished;
    [self didChangeValueForKey:@"isFinished"];
}

//ERROR:
 Use of undeclared identifier '_finished'; did you mean 'finished'?

添加@synthesize finished = _finished;可使错误消失,但是否有办法强制xCode6 Beta 3使用下划线表示法自动属性合成?

推荐答案

一开始我以为这是测试版的错误,但今天我看到XCode6 GM种子上也出现了这种类型的错误,尽管我还没有发现在哪些特定情况下。

不管怎样,修复方法是在@Implementation块中添加一条syntheize语句,显式声明ivar的名称和属性:

@synthesize property = _property

这篇关于Xcode 6如何修复自动属性合成中未声明的标识符的使用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆