我目前正在使用最新版本的Xcode(v5.0.2),我的应用程序的部署目标是iOS 7.0。
我的问题是,无论在哪个类中,我都可以在标题中设置属性
例如:@property (strong, nonatomic) NSString *firstName;
在实现文件中,我可以将其综合起来
例如:@synthesize firstName;
我的问题是我不能在代码中使用_firstName
。我在其他项目中使用过自动ivars也很好(属性名称前面带有下划线)。
Xcode抱怨并告诉我将其更改为属性名称,不带下划线。我不明白为什么这个项目没有自动为我创建带有下划线的ivars。我知道在Objective-C的较旧版本中,您必须自己执行此操作,但对于iOS 7则不需要。
谢谢!
最佳答案
您可以完全跳过@synthesize
,它将创建强调的ivars。如果在不指定变量名(@synthesize
)的情况下执行@synthesize firstName = _firstName;
,它将创建不带下划线的变量。