Xcode ';错误';无法构造,因为它没有可访问的初始值设定项

Xcode ';错误';无法构造,因为它没有可访问的初始值设定项,xcode,swift3,Xcode,Swift3,不确定这是我的代码中的错误还是XCode中的小故障 我有这门课(为了清楚起见简化了) 在另一节课上我有 if someCondition { return Error (0) } 现在奇怪的是。。。一切都可以编译和运行,但如果我让XCode闲置片刻(不是我使用的速度最快的计算机),XCode会给我一个臭名昭著的红点(带感叹号),错误如下: 无法构造“Error”,因为它没有可访问的初始值设定项 在每次执行错误(0)的旁边(无论我在构造函数中使用什么Int) 我可以编译并再次运行,错误会

不确定这是我的代码中的错误还是XCode中的小故障

我有这门课(为了清楚起见简化了)

在另一节课上我有

if someCondition {
    return Error (0)
}
现在奇怪的是。。。一切都可以编译和运行,但如果我让XCode闲置片刻(不是我使用的速度最快的计算机),XCode会给我一个臭名昭著的红点(带感叹号),错误如下:

无法构造“Error”,因为它没有可访问的初始值设定项

在每次执行错误(0)的旁边(无论我在构造函数中使用什么Int)

我可以编译并再次运行,错误会出现,然后再次出现

使用XCode 8.1版(8B62)

********请参见备注****其他信息********

仍然是一个(将错误重命名为AppError后出现类似问题)

它编译并运行,但一段时间后,func doSomething旁边会弹出一个错误


使用未声明类型“AppError”是一种Swift协议,因此没有可访问的初始化器。您的编译器可能将Swift.Error与您的本地错误定义混淆。当引用错误类型以避免混淆时,应该包括名称空间,即

(目标名称)。错误


关于您在将类重命名为AppError后看到的错误,存在一个XCode错误,它在应用程序编译和运行后显示旧错误,只要它正在编译和运行,您就可以忽略这些错误。

Error
已经是Swift 3中的现有类,您可能会遇到某种名称解析冲突。尝试以不同的方式重命名您的类。@Glenn您是否可以使用除
错误
以外的其他名称,例如
AppError
,这是一个快速的答案,并被证明有效。我太快了,出现了一些其他问题,请参阅问题I添加了一些内容
if someCondition {
    return Error (0)
}
func doSomething (blah: Int, test : String) -> AppError {

    some code
    return AppError(1)
}