值类型和引用类型

2018-08-30  本文已影响9人  lanmoyingsheng

值类型赋值时是[内容]新的一份拷贝,而引用类型是引用的拷贝。

swift中结构体、枚举、Int、Double、Bool等是典型的值类型。

swift中String是值类型。
OC中NSString虽然本身是引用类型,但一般用copy修饰,当传过来的是NSMutableString时当作值类型来用。

我认为值类型是为了加强 数据安全。

OC中NSSString用copy修饰,
一是为了数据安全:防止传过来的是NSMutableString,却当作NSSString使用,有可能这个NSMutableString在其他地方已经修改。
二是节约内存:如果被赋值的是NSSString,则共享字符串占用的内存,减少内存占用。

上一篇 下一篇

猜你喜欢

热点阅读