Swift中值类型赋值操作

  1. 值类型赋值给var、let或者给函数传参,是直接将所有内容拷贝一份,类似于对文件进行copy、paste操作,产生了全新的文件副本。属于深拷贝(deep copy)
  2. 在Swift标准库中,为了提升性能,StringArrayDictionarySet采取了Copy On Write的技术。比如仅当有“写”操作时,才会真正执行拷贝操作
  3. 对于标准库值类型的赋值操作,Swift 能确保最佳性能,所有没必要为了保证最佳性能来避免赋值
  4. 建议:不需要修改的,尽量定义成let
import UIKit
var s1 = "Jack"
var s2 = s1
s2.append("_rose")
print(s1)
print(s2)

输出结果为:

Jack
Jack_rose

你可能感兴趣的:(Swift中值类型赋值操作)