Xcode 6如何修复自动属性合成中未声明的标识符的使用?

xCode 6 how to fix amp;quot;Use of undeclared identifieramp;quot; for automatic property synthesis?(Xcode 6如何修复自动属性合成中未声明的标识符的使用?)

本文介绍了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如何修复自动属性合成中未声明的标识符的使用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:Xcode 6如何修复自动属性合成中未声明的标识符的使用?

基础教程推荐