我不明白为什么以下内容在 Swift 中不起作用:
class SomeClass {
var foo = 1
var bar = self.foo + 1
}
解决方法是什么?
最佳答案
它不起作用,因为您无法在该范围内使用 self
来定义属性的默认值。我相信这是因为在对象正确初始化之前你不能使用 self 。您可以改用显式初始化程序。
class SomeClass {
var foo: Int
var bar: Int
init() {
self.foo = 1
self.bar = self.foo + 1
}
}
但是,您可以访问静态成员。
class SomeClass {
static let initialValue = 1
var foo = initialValue
var bar = initialValue + 1
}
关于swift - 快速引用全局变量中的另一个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31991799/