gpt4 book ai didi

Swift willSet/didSet 赋值?

转载 作者:搜寻专家 更新时间:2023-11-01 06:28:52 33 4
gpt4 key购买 nike

我想通过使用 didSet/willSet API 观察类中几个属性的变化。但是我想保持我的属性声明部分干净,所以我想有单独的函数来实现这个逻辑。

现在我有这样的东西:

var myProperty: SomeType {
didSet {
handleDidSetMyProperty()
}
}

然而,这会占用 5 行,如果您有更多此类属性,这会相当多。如果我可以将其限制为 3 就好了,例如:

var myProperty: SomeType {
didSet = handleDidSetMyProperty
}

Swift 中有没有一种方法可以将函数/闭包分配给属性观察者?

最佳答案

不,你不能。参见 Declarations在 swift 编程语言。

在“变量声明的语法”中你会发现

didSet-clause → attributes­opt ­didSet­ setter-name­­opt ­­code-block­

和“代码块的语法”

code-block → {­ statements­opt

didSet 关键字后面只能跟一个代码块(带有强制花括号)。

关于Swift willSet/didSet 赋值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50017893/

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