我想要一个 NSMutableArray 全局变量。我有以下设置:
code.h
extern NSMutableArray *global
@interface
@end
code.m
NSMutableArray *global=nil;
@implementation
...
global=variable_mutablearray; //copy variable_mutablearray to global
@end
我很确定我正在做的将现有 nsmutablearray 设置为全局变量的操作是不正确的。我应该做什么?
最佳答案
全局变量并不是 Objective C 中最好的选择:使用单例要好得多。
你可以这样做:
标题:
@interface Globals : NSObject
+(NSMutableArray*)array;
@end
实现:
@implementation Globals
+(NSMutableArray*)array {
static NSMutableArray *statArray;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
statArray = [NSMutableArray array];
});
return statArray;
}
@end
用法:
NSMutableArray *ga = [Globals array];
关于objective-c - 设置 NSMutableArray 全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11714897/