Cod*_*ven 15 properties declaration dynamic objective-c ivar
在实现接口时,似乎教程和文献中的常用方法是声明一个ivar,然后设置@propertythen @synthesize.
@interface MyClass : NSObject {
NSString *myString;
}
@property (nonatomic, retain) NSString *myString;
@end
Run Code Online (Sandbox Code Playgroud)
但是,省略显式声明并仅放置@property具有相同的效果.
@interface MyClass: NSObject {
}
@property (nonatomic, retain) NSString *myString;
@end
Run Code Online (Sandbox Code Playgroud)
那么大多数人如何使用@property和明确宣言?不好的形式不是吗?
Dav*_*ong 15
它曾经是必要的.Objective-C运行时有两个不同的版本:一个32位的"遗留"运行时(旧的)和一个32/64位的运行时(新的32位运行时仅用于iOS设备和iOS模拟器).
我认为这仍然是唯一需要的地方是当你以32位模式运行应用程序时(10.5或10.6).其他地方(64位Leopard,64位Snow Leopard,Lion,iOS)使用具有"自动ivar合成"的新运行时,所得到的ivars称为"合成ivars".