这个问题使我发现了这个问题。
如果我在不同模块的同一个类中有两个具有相同签名的初始化程序,我该如何指定要调用的初始化程序?要使用与该问题相同的示例,假设我声明了一个这样的便利初始化程序:
extension UIStoryboard {
convenience init(name: String, bundle: NSBundle?) {
// ... do custom things ...
// This line causes infinite recursion. (How) Can I specify which
// initializer I want to call?
self.init(name: name, bundle: bundle)
}
}
我认为这也是两个扩展的问题,它们将具有相同签名的方法添加到同一个类。
有没有办法解决这个问题?或者这只是一个错误?