局部变量,全局变量,实例变量,成员变量,静态变量,属性变量。
头文件:
源文件:
@interface ViewController : UIViewController
{
//成员变量(属于类内部,所以不用生成set和get方法)
NSArray *array1;
}
//属性变量
@property (nonatomic,strong) NSArray *array2;
@end
源文件:
int a;全局变量
- (void)viewDidLoad
{
a=1;
[super viewDidLoad];
array1 = [[NSArray alloc] initWithObjects:@"abcde", nil];
array2 = [[NSArray alloc] initWithObjects:@"123abc", nil];
{
// 局部变量
NSArray *array1 = [[NSArray alloc] initWithObjects:@"12345", nil];
}
NSLog(@"\narray1 : %@\n array2 : %@",array1,array2);
}
叫做实例变量。(实例变量+基本数据类型变量=成员变量)
成员变量存储在堆中,全局变量存储在静态区中(程序一启动就会分配存储空间,直到程序结束才释放)。
成员变量是属于类的,所以被创建对象的所有成员变量都存在堆中。全局变量和静态变量不属于类,所以存储在静态区。
参考:https://www.jianshu.com/p/38b8aef697d1