gpt4 book ai didi

swift - Swift 3 中的 getter inside setter

转载 作者:搜寻专家 更新时间:2023-10-30 22:06:12 25 4
gpt4 key购买 nike

我正在使用这个变量

public var tick: Int64 {
get {
return UserDefaults.standard.object(forKey: TICK) as? Int64 ?? 0
}
set(v) {
let cur = UserDefaults.standard.object(forKey: TICK) as? Int64 ?? 0 + v
UserDefaults.standard.set(cur, forKey: TICK)
}
}

但我想知道,这是在 setter 中调用 getter 的正确方法吗?我的意思是:

set(v) {
let cur = /*HOW TO CALL GETTER HERE? */ + v
UserDefaults.standard.set(cur, forKey: TICK)
}

如果我使用 self 而不是 /*HOW TO CALL GETTER HERE? */ ,它不起作用。

最佳答案

您可以简单地在其 setter 中调用值 (tick) 来获取旧值:

public var tick: Int64 {
get {
return UserDefaults.standard.object(forKey: TICK) as? Int64 ?? 0
}
set(v) {
let cur = tick + v
UserDefaults.standard.set(cur, forKey: TICK)
}
}

关于swift - Swift 3 中的 getter inside setter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42038523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com