我一直在使用一些功能程序来避免改变结构,并且没有明确的解释哪种方法在性能方面是最好的。
在这种情况下,任何人都可以提供帮助并建议在性能和内存管理方面最佳解决方案是什么?
例如:
变异选项
struct User {
var name:String
init(name:String) {
self.name = name
}
mutating func change(name:String){
self.name = name
}
}
非变异选项
struct User {
var name:String
init(name:String) {
self.name = name
}
func change(name:String) -> User {
return User(name: name)
}
}