如何构建像整数数组一样的全局?

时间:2011-07-11 20:30:07

标签: iphone objective-c cocoa-touch

如何构建像整数数组一样的全局?

我尝试了以下各种变体:

@interface
int *iArray; //this space will vary depending upon need in the implementation

@implementation
...
int iArrayInit[4] = {1,2,3,4};
iArray = iArrayInit;

-bottom line:我需要将索引值保存在我可以轻松访问的数组中,并且[NSArray intValue]的使用可能会减慢。

感谢

1 个答案:

答案 0 :(得分:0)

如果它需要是静态的,您可以在实现文件中将NSMutableArray声明为静态,并公开静态方法来访问它。使用NSArray时,值id必须为NSNumber //.h file @interface Foo : NSObject { } +(NSArray*)iArray; +(void)addiArrayValue:(NSNumber*)value; @end //.m file @implementation Foo static NSMutableArray *_iArray; +(void)initialize { if([Foo class] == self) { _iArray = [[NSMutableArray alloc] init]; } } +(NSArray*)iArray { return [[_iArray copy] autorelease]; } +(void)addiArrayValue:(NSNumber*)value { [_iArray addObject:value]; } @end //Use [Foo addiArrayValue:[NSNumber numberWithInt:10]]; [Foo addiArrayValue:[NSNumber numberWithInt:12]]; NSLog(@"%@", [Foo iArray]); 。这是一个当前不是线程安全的例子。

{{1}}
相关问题