枚举命名首字母大写,内部的成员名称小写
关联值
关联值用例
默认值(原始值)
隐式原始值
递归枚举indirect
Memorylayout 类似sizeof,获取变量的内存大小
64与操作系统相关
内存对齐
关联值为了赋值,变量会提前申请更多的内存,并且把数据存在变量里
原始值不存储数据在变量里,一般为1个字节,存下标(0,1,2...),需要取出数据时用rawValue取出
可选项
默认类型是不能为空的(=nil)
强制解包
判断可选项是否有值
等价写法
While运算
空合并运算符
返回的值的类型取决于B
多个空合并运算符,返回类型,看最右边的类型
空合并运算和条件判断配合使用
接收字典类型
解包取值,发现用户名为空,就中断
字典取值是可选项类型
而数组返回原类型
解包成功赋值给用户名
Guard拦截语句,条件不成立,就会执行,必须退出当前作用域
强制解包:num! ,隐式解包:let num1 int ! = 10
依然可以做为空判断和绑定赋值
字符串插值,消除警告
多重可选项
Frame variable查看变量结构,可以用在面向对象