Swift 中的类和结构体
当然,类和结构体也有很多不同的地方,类还有许多独有的附加功能:
结构体会提供一个默认的构造函数,这个构造函数是结构体所有的属性分别作为参数来构建: struct MyPoint { var x = 0 var y = 0 } let point:MyPoint = MyPoint(x: 1,y: 2) 结构体和枚举都是值类型,值类型在赋值(给变量或者常量)和传递(作为参数给一个函数)的时候都会被拷贝,值类型实例的值属性也会被拷贝。 类是引用类型,引用类型在赋值和传递的时候,内容并不会被拷贝。因此赋值的实例和被赋值的实例其实是一份内容,内容在内存中也是一份。 值类型和引用类型的区别在于,值类型在赋值和传递的时候是深拷贝,而引用类型是浅拷贝。
但需要注意的是,在 那么,我们到底如何选择结构体或者类呢?如果你只是用来做以下功能是可以选择结构体:
比如 本文首发于https://iosgg.cn/2016/10/12/swift_class_struct/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |