以下代码无法编译:
class object { class var myVar: String! { return "from class" } var myVar: String! { return "from instance" } }
错误:
Invalid redeclaration of ‘myVar’
这对Swift来说是不可能的,还是我做错了?这在Objective-C中是完全合法的(作为函数而不是变量).
目前,你不能.如果您真的想这样做,可以向Apple提交
Bug Report.
我建议不要这样做.这是非常糟糕的做法,仅仅因为有两个不同的变量命名完全相同的东西,唯一的区别是它们如何被访问,是一个可怕的代码气味.而且令人困惑.
因此,如果您愿意,请提交雷达,然后更改您的变量名称.我怀疑苹果会“修复”这个问题.