objective-c属性 - 没有属性

时间:2012-12-05 05:41:51

标签: objective-c properties

我刚开始阅读来自apple的Object-c开发人员手册。我正在玩房产。我声明了一个类接口,它有两个属性:

@interface SocialEnglish : NSObject <IsSociable>
@property int numberOfPeopleMet;
@property (readonly) int readOnlyProperty;
@end

不声明与属性关联的实例变量。令我惊讶的是,编译器没有抱怨。然后我编写了一堆代码来访问实例对象,确定setter和getter工作就像我实现了它们并将它们与实例变量相关联一样!

在宣布课程中,我可以这样做:

...
_readOnlyProperty = 3;
...
嗯...我说这个有用可能......我不喜欢它。为什么编译器没有抱怨而是生成代码。我需要设置一个设置。

另请注意,我的实现类中没有 @synthesize 指令。

谢谢!

1 个答案:

答案 0 :(得分:3)

Xcode的最新版本现在自动“synthesize”声明属性。 This came in with Xcode 4.0(请参阅“编译:LLVM2.0”下的链接发行说明)。

如果你想打电话给“@synthesize”,或者宣布“_readOnlyProperty”ivar或静态和“@synthesize”,或者写下你自己的“定居者”。 getter,你可以继续这样做。