目标C - 如何定义我班级中所有方法都可访问的STATIC数字数组?

ary*_*axt 2 objective-c static-array

如何定义我的类中所有方法都可访问的STATIC数字数组?

Car*_*rum 11

就像你在C中做的一样:

static int myArray[] = { 0, 1, 2, 3, 4, 5 };
Run Code Online (Sandbox Code Playgroud)

如果你想要一个静态NSArray,你将不得不做一些技巧. staticObjective-C中的对象类型不允许(因为你不能直接声明一个对象 - 只有指针).在这种情况下,您需要阅读Objective-C单例.快速实现它的方法:

+ (NSArray *)myArray
{
  static NSArray *theArray;
  if (!theArray)
  {
    theArray = [[NSArray alloc] initWithObjects:[NSNumber numberWithInt:0], nil];
  }
  return theArray;
}
Run Code Online (Sandbox Code Playgroud)

当然,您可以将其设置为使用您喜欢的任何类型的对象进行初始化.