我有这样的代码:“初始化元素不是编译时常量”为什么?
- (NSString *) calculate: (uint) position {
static NSArray * localArray = [NSArray arrayWithArray: self.container.objects ];
// some un related code
return obj;
}
编译器会抱怨说:“初始值元素不是一个编译时间常数”。当我将“static”添加到localArray时发生了这种情况。但为什么?
http://stackoverflow.com/q/6143107/94687是同样的问题。在你的问题中唯一特别的是将static关键字明确地添加到函数体内的变量中(但是这必须等同于在全局范围内具有变量,就像在该问题中那样)。 –