当协议扩展实现功能不正确时,XCode 7.2崩溃
问题描述:
不确定是否有其他人遇到此问题,但以下代码会导致XCode立即错误地出现'SourceKitService意外退出'并且有时会导致XCode完全崩溃。当协议扩展实现功能不正确时,XCode 7.2崩溃
我在我的项目中遇到了这种情况,当时我在扩展中更改了协议功能的默认实现,但忘记更改协议中的声明以匹配。
protocol Crash{
func crash(age: Int) ->String
}
extension Crash{
func crash(name: String) -> String{
return "Test"
}
}
class TestCrash: Crash{
}
我经历过同样的,我也没有答案......但最好的解决方法是如果扩展定义的,因为这样的声明是多余的不申报的协议功能。它似乎是一个错误,编译器应该抱怨,TestCrash不符合协议崩溃,因为func crash(age:Int) - > String没有实现。 – user3441734
感谢您的信息,没有意识到协议中的声明是多余的。 – Villarrealized