首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Swift中有没有优化结构拷贝的方法?

在Swift中有没有优化结构拷贝的方法?
EN

Stack Overflow用户
提问于 2021-12-08 15:18:58
回答 1查看 110关注 0票数 0

我正在开发一个iOS应用程序,并有以下数据模型:

代码语言:javascript
复制
struct Student {
    var name: String?
    var age: UInt?
    var hobbies: String?
    ...
}

该模型用作一个视图控制器中的数据源,其中每个属性值将被填充在一个UITextfield实例中,以便用户可以编辑学生的信息。每当用户完成输入某一项(例如名称)时,新值将覆盖旧模型的相应属性。

问题是,由于struct是值类型而不是引用类型,所以每次向它分配新的属性值时都会生成一个新的模型实例。在我的模型中可能有超过20个属性,我认为这么多副本是相当浪费的。出于某些原因,我不允许使用。有什么方法可以优化这个吗?这些副本会不会导致任何性能问题?

EN

回答 1

Stack Overflow用户

发布于 2021-12-08 18:21:47

您可以创建一个具有可变关键字的func,如下所示

代码语言:javascript
复制
 struct Point {
      var x = 0.0
      mutating func add(_ t: Double){
        x += t
     }
   }

找到更多的here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70277399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档