@interface{}
将变量放在头文件中的声明中和在该声明之后放置有什么区别@property
?
例如,
@interface GameCenterManager : NSObject
{
GKInvite* pendingInvite;
}
@end
与
@interface GameCenterManager : NSObject
@property (weak, nonatomic) GKInvite* pendingInvite
@end
@interface{}
将变量放在头文件中的声明中和在该声明之后放置有什么区别@property
?
例如,
@interface GameCenterManager : NSObject
{
GKInvite* pendingInvite;
}
@end
与
@interface GameCenterManager : NSObject
@property (weak, nonatomic) GKInvite* pendingInvite
@end
根据括号内的标准,声明一个属性会为实例变量生成 getter 和 setter。
在括号中定义变量只是将它们声明为实例变量。
以下是一些提供有关这些信息的更多信息的链接。
http://www.cocoawithlove.com/2010/03/dynamic-ivars-solving-fragile-base.html
Objective-c 中的“实例变量”和“属性”有区别吗?
http://iphonedevelopment.blogspot.in/2008/12/outlets-property-vs-instance-variable.html