假设你有一个变量:
var x = 6
然后您稍后将其更改为,例如,7。是否可以将其恢复为设置的原始值(无需手动输入x = 6)?
答案 0 :(得分:1)
正如评论所说,这是不可能的,但您可以创建一个简单的结构来执行此操作:
struct Revertable<T> {
private let defaultValue: T
var value: T
init(defaultValue: T) {
self.defaultValue = defaultValue
self.value = defaultValue
}
mutating func revert() {
value = defaultValue
}
}
用法:
var a = Revertable(defaultValue: 3)
a.value = 5
a.value
a.revert()
a.value