当你这样做时
myClass.m
@interface myClass {
NSMutableArray *myArray;
}
@end
@implement
.....
.....
尝试声明这样的变量时的目的是什么。 声明
时的外观如何myClass.h
@import "UIKit/UIKit.h"
@interface myClass () <TableViewDataSource>
NSMutableArray *myArray
@end
由于
答案 0 :(得分:-2)
第一个例子是实例变量的声明。
第二种是使用财产。
两者之间存在差异。例如,在使用实例变量时,您必须编写自己的getter / setter。有财产,你没有。
可以在此处找到更多差异和详细信息:Declared Properties Documentation
更新了原始问题的给定更改。
假设您正在讨论myArray变量,在第一个示例中,您已将myArray声明为类的实例变量。要访问它,您需要创建该类的实例。
在第二个示例中,您已将其声明为全局变量,默认情况下具有文件范围。也就是说,您可以在任何包含myclass.h头文件的文件中使用它,而无需创建该类的实例。但是,您必须小心将其包含在多个文件中,否则最终可能会出现多个定义错误。