比较结构体和类
Swift 中结构体和类有很多共同点,二者皆可:
- 定义属性以存储值
- 定义方法以提供功能
- 定义下标以提供下标语法访问其值
- 定义构造器以设置其初始化状态
- 通过扩展以增加默认实现功能
- 遵循协议以提供某种标准功能
类又有一些结构体没有的额外功能:
- 继承让一个类可以继承另一个类的特征
- 类型转换让你在运行时可以检查和解释一个类实例
- 析构器让一个类的实例可以释放任何被其所分配的资源
- 引用计数允许对一个类实例进行多次引用
定义语法
每当你定义一个新的结构体或类都是定义一个全新的 Swift 类型。请使用 UpperCamelCase 命名法
struct SomeStructure {
// structure definition goes here
}
class SomeClass {
// class definition goes here
}
struct Resolution {
var width = 0
var height = 0
}
class VideoMode {
var resolution = Resolution()
var interlaced = false
var frameRate = 0.0
var name: String?
}