gpt4 book ai didi

objective-c - Objective C Initialiser 元素不是编译时常量

转载 作者:行者123 更新时间:2023-12-04 05:04:59 24 4
gpt4 key购买 nike

当我尝试运行我的构建时,我收到错误“Initialiser element is not a compile-time constant”。结果表明,Array 是问题的根源。我的代码如下:

@implementation XYZViewController 
//Array setup
NSArray *example = @[@"X", @"Y", @"Z"];

@end

这不是我的全部代码,但我目前认为没有必要在此处显示我的完整代码。

最佳答案

重点是@[@"X", @"Y", @"Z"];不是静态初始值设定项,因为编译器将其转换为对 arrayWithObjects:count: 的方法调用的 NSArray .

静态初始化不能是方法调用,当然编译器会提示它。

如果你想初始化你的数组,你可以在运行时在一个方法中进行。您有多种选择可以这样做。

如果您想为每个实例初始化数组,只需在默认初始化器中执行此操作(哪个取决于特定类)。

如果您想在类(class)级别这样做,您可以在 initialize 中进行。类方法。

关于objective-c - Objective C Initialiser 元素不是编译时常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15633519/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com