@inline
//永远不会被内联(即使开启了编译器优化)
@inline(never) func test() {
print("test")
}
//开启编译器优化后,即使代码很长,也会被内联(递归调用函数,动态派发的函数除外)
@inline (always) func test() {
print ("test")
}
- 在
Release
模式下,编译器已经开启优化,会自动决定哪些函数需要内联,因此没必要使用 @inline
枚举的基本用法
enum Direction{
case North
case Sourth
case West
case East
}
var dir = Direction.East
dir = .West
print(dir)
关联值(Associated Values)
- 有时会将枚举的成员值跟其他类型的关联值存储在一起,会非常有用
enum Score{
case points(Int)
case grade(Character)
}
var score = Score.points(96)
score = .grade("A")
print(score)
网友评论