我看到一些示例有时会声明属性和变量,而其他时候则不会。例如有时我看到这样的代码
@interface Test : NSObject
{
UIProgressView* _progressView;
}
@property (nonatomic,retain)UIProgressView* progressView;
@end
其他时候我会遇到
@interface Test : NSObject
@property (nonatomic,retain)UIProgressView* progressView;
@end
为什么是什么原因?我正在学习并且几乎总是同时使用属性和变量。
我使用 UIProgressView
作为示例。
最佳答案
仅当您需要 @protected 访问(仅从子类访问)或支持旧的运行时(两者都需要)时,使用 ivars 代替属性才有用。
关于iphone - 我什么时候需要同时拥有 iVar 和属性(property)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7991863/