@property和接口声明中的变量之间的区别

时间:2013-05-21 04:02:09

标签: ios objective-c cocoa-touch cocoa

将变量置于头文件中的@interface{}声明内,并在声明后放入@property之间有什么区别?

如,

@interface GameCenterManager : NSObject
{
GKInvite* pendingInvite;
}
@end

而不是

@interface GameCenterManager : NSObject
@property (weak, nonatomic) GKInvite* pendingInvite
@end

1 个答案:

答案 0 :(得分:3)

  

根据括号内的条件,声明属性会为实例变量生成getter和setter。

     

在括号中定义变量只是声明它们的实例变量。

以下是一些提供更多相关信息的链接。

http://www.cocoawithlove.com/2010/03/dynamic-ivars-solving-fragile-base.html

Is there a difference between an "instance variable" and a "property" in Objective-c?

http://iphonedevelopment.blogspot.in/2008/12/outlets-property-vs-instance-variable.html