我已经阅读了相当多的 Objective C 书籍,看到了大量的在线视频教程,但我一直停留在这一点上。我知道实例变量是在接口(interface)中的大括号之间编码的,但为什么它们如此特殊并且与大括号外的其他变量甚至接口(interface)不同。
例如。
@interface CustomClassName : NSObject {
NSString *myString;
}
@end
为什么不:
@interface CustomClassName : NSObject {}
NSString *myString;
@end
或者:
@interface CustomClassName : NSObject {}
@end
NSString *myString
他们有什么特别之处?有人告诉我这是语言的语法。我如何知道某个变量是否需要在大括号内声明。我尝试用谷歌搜索这个,阅读我书中的章节,(我有Head First iPhone and iPad Development & 绝对初学者的 Objective-C ),但徒劳无功。如果有人能解释其中的差异,那就太好了!
最佳答案
看来您对 Objective-C 的世界还很陌生。您应该查阅有关该主题的现有 Material 。它将开始解释名为 @property
的内容,您将开始理解实例变量的用途。
对于我来说,当我想在类实现中使用原始类型时,我会使用 ivars,该类型的值必须在对象的生命周期内持续存在。所以类似:
@interface Person : NSObject {
int age;
}
关于iphone - 实例变量到底是什么?为什么它们如此重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12996180/