swift 什么时候用类,什么用结构体
2017-07-19 本文已影响32人
Mr木子李
在swift中 结构体(struct)和类(class)的语法和功能非常相似,那么在实际开发中我们该怎么怎么选择呢。
什么时候选择结构体? 什么时候选择类?
1 :把结构体看作是值 如:位置(经纬度) 坐标(二维坐标,三维坐标) 温度 ...
把类看作是物体 如: 人 车 动物 商店 ...
2 :必须清楚的一点 结构体是值类型,类是应用类型(具体什么是值类型,什么是引用类型我相信大家已经非常清楚了)
3 : 结构体比类更"轻量级" ,结构体开辟的内存空间在栈区,类开辟的内存空间在堆区,这两块的区别也不言而喻,对于比较小的程序可能不管在哪里开辟的内存都影响不大。当程序足够大的时候,这也是考虑的因素。
4 :类是可被继承的,这点是与结构体很大的区别。
虽然swift 里面提出了面向协议的编程概念,但是结构体与类也是很重要的数据类型。用好结构体与类也是非常重要的。