例如,在下面的代码中。什么时候应该声明一个实例变量而不是头中的属性?
@interface TUTViewController : UIViewController
{
NSTimer *timer;
}
@end
和
@interface TUTViewController : UIViewController
@property (weak, nonatomic) NSTimer *timer;
@end
在这情况下我们使用第一种方法来声明变量?
如果要控制获取/设置逻辑,则声明一个属性。与你拥有的伊娃相当的财产也不会太弱。 –
永远不要把ivars放在.h中。 ivars应该永远是私人的意思,他们不属于公众.h。如果你创建ivars,把它们放在.m文件中。 – rmaddy
我几乎从不说。对于objC类型,总是尝试使用属性。如果您需要从您的实施中使用伊娃,那么无论如何您都可以这样做。 例如,我看到了objC类型,因为我有使用C++引用作为属性的问题。 –