在 Swift 中,class 是引用类型(指针类型), struct 是值类型
值类型
值类型在传递和赋值时将进行复制; 赋值给var、let或者给函数传参,是直接将所有内容拷贝一份, 类似于对文件进行...值类型(比如:struct),在复制时,复制对象与原对象实际上在内存中指向同一个对象,当且仅当修改复制的对象时,才会在内存中创建一个新的对象
为了提升性能,Struct, String、Array、Dictionary...,使用 copy-on-write将值传递与复制开销降到最低
如何将Swift 中的协议(protocol)中的部分方法设计为可选(optional)?...使用扩展(extension),来规定可选方法,在 swift 中,协议扩展可以定义部分方法的默认实现
convenience只提供一种方便的初始化器,必须通过一个指定初始化器来完成初始化[obj iskinOfClass...自省在OC中就是判断某一对象是否属于某一个类的操作,有以下2中方式
在 Swift 中由于很多 class 并非继承自 NSObject, 故而 Swift 使用 is 来判断是否属于某一类型, is