gpt4 book ai didi

ios - 如何扩展默认实现(使用扩展)在属性上添加 didSet?

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

如何通过扩展在 MyProtocol var 上实现 didSet

我需要在设置后运行一些特定的代码。

我试过了,但是我得到了这个错误:

Extensions may not contain stored properties

protocol MyProtocol {
var contact: MyContact? { get set }
}

extension MyProtocol {
var contact: MyContact? {
didSet {
// some code
}
}
}

最佳答案

来自文档:

Extensions can add new computed properties, but they cannot add stored properties, or add property observers to existing properties.

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Extensions.html#//apple_ref/doc/uid/TP40014097-CH24-ID151

如果要设置 contact 的默认值,则它必须是计算属性。

extension MyProtocol {
var contact: MyContact? {
return MyContact()
}
}

关于ios - 如何扩展默认实现(使用扩展)在属性上添加 didSet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36817969/

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