<分区>
这是一个人为的例子:
class AwesomeClass {
var answerToEverything: NSInteger = 42
class func answerToEverything() -> NSInteger {
return 42
}
}
根据我对 Swift 的理解,这里应该没有问题:var answerToEverything
和 class func answerToEverything
具有不同的签名:var answerToEverything
适用于实例和 class func answerToEverything()
到类。
但是,这会导致编译器错误:
“answerToEverything()”的重新声明无效
为什么同名的实例参数和类函数会报错?
以防万一,我使用的是 Xcode 7.3 (7D175)。
注意:实例方法 和实例参数 不能同名是有道理的。编译器无法区分它们。但是,这个问题是关于类 方法和实例 参数的。这与提议的重复问题不同。