gpt4 book ai didi

Swift 适当处理存储的属性 (willSet/didSet)

转载 作者:行者123 更新时间:2023-11-28 07:45:17 26 4
gpt4 key购买 nike

<分区>

对于存储属性,我们使用观察者,例如 willSetdidSet。这使我们能够跟踪对该属性所做的任何更改。

首先调用 willSet,属性改变,然后调用 didSet。

问题是:如何处理属性的输入?

我看到的所有示例,都是在didSet 中执行的,这意味着属性首先更改,然后在 中通过if/else 检查didSet 并在匹配条件时再次更改。

var life: Int = 0 {
didSet {
if life >= 1000 {
life = 999
}
}
}

我们不能只检查 willSet 中的输入条件并在匹配时更改它(无需双重更改)吗?如果是,请提供一个非常简单的示例。

或者唯一的方法是使用didSet

编辑: 看起来人们不明白我想问什么。

1)我只想使用存储的属性

2)我想知道 - 我是否可以更改 willSet 中的属性而不使用 didSet,正如我已经指出的那样。您提供的链接涵盖了我已经知道的 didSet 解决方案。

如果是 - 然后提供示例,如果不是,那么我已经知道怎么做了。

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