我想将一个枚举类型添加到数组中,并且出现错误。我能够添加一个字符串和其他类型,但是这个枚举失败。有人知道这里可能会出现什么问题吗?将枚举类型添加到Swift数组时出错
enum Domain {
case Default
}
let domains: Array<Domain> = [.Default]
主题1:EXC_BAD_INSTRUCTION(代码= EXC_i386_INVOP,子码=为0x0)
我想将一个枚举类型添加到数组中,并且出现错误。我能够添加一个字符串和其他类型,但是这个枚举失败。有人知道这里可能会出现什么问题吗?将枚举类型添加到Swift数组时出错
enum Domain {
case Default
}
let domains: Array<Domain> = [.Default]
主题1:EXC_BAD_INSTRUCTION(代码= EXC_i386_INVOP,子码=为0x0)
这绝对是一个苹果的bug - 记录它! https://bugreport.apple.com
将第二种情况添加到您的枚举(例如,其他情况)并查看错误不再发生。当Enumeration只有一个案例时,Swift会发生一些疯狂的事情。
看起来,至少在我玩一个操场,如果枚举定义包含单词“域”在所有的任何地方在名称中枚举无法编译/工作。
我认为这只是苹果的部分编译错误......如果我有下面的代码,并且仅此代码,样样精运行:
var points = TestEnum[]()
points += TestEnum.TestValue
enum TestEnum {
case TestValue
case SecondTestValue
}
不过,我有一个代码上面的代码(一简单的RPN实现,但没关系)。 RPN代码本身运行良好。但随着TestEnum代码在那里,RPN代码崩溃。崩溃是一个EXC_BAD_ACCESS,并根据程序中的代码行(我猜测是因为可执行文件中的偏移量发生变化)而在随机行和不同地址上崩溃。例如,我在点+ =调用后添加了一个println,它在我的RPN代码的不同部分崩溃。
RPN代码和TestEnum代码都可以自行运行。这几乎肯定是一个苹果的错误。
现在我看到,即使我使用String [] –
错误提交:17231673 – banDedo