结构体和类(swift)

1.(初始化器)

编译器会自动为 结构体 生成传入成员值的初始化器,
而类必须所有成员有默认初始化值,才会生成无参的初始化器.

2.(本质区别)

2.1.结构体是值类型(枚举也是),而类是引用类型(指针类型)
2.2.结构体内存地址根据定义结构体的位置决定(1.在函数里定义则在栈中,2全局定义则在全局区,(数据段),3.在类中定义则在堆中),类则存储在堆中

3.枚举

枚举的原始值rawValue本质是:只读的计算属性,不占用内存,枚举得内存是用来存储case值

你可能感兴趣的:(结构体和类(swift))