相关疑难解决方法(0)

如何复制结构并同时修改其中一个属性?

如果我想将我的视图控制器的状态表示为单个结构然后实现撤销机制,那么我如何更改结构上的一个属性,同时获取前一个状态的副本?

struct A {
   let a: Int
   let b: Int

   init(a: Int = 2, b: Int = 3) {
      self.a = a
      self.b = b
   }
}

let state = A()
Run Code Online (Sandbox Code Playgroud)

现在我想要一份state但是b = 4 的副本.如何在不构造新对象且必须为每个属性指定值的情况下执行此操作?

immutability swift

13
推荐指数
3
解决办法
7510
查看次数

标签 统计

immutability ×1

swift ×1