3
articleの読み込み後、コンパイル時間が短くなります。私はなぜ2つ以上のシーケンス融合演算子の使用がコンパイル時間を大幅に増やすのかに興味があります。nil合体オペレーターによるコンパイル時間の短縮
例: コンパイル時間3.65秒。
func fn() -> Int {
let a: Int? = nil
let b: Int? = nil
let c: Int? = nil
return 999 + (a ?? 0) + (b ?? 0) + (c ?? 0)
}
コンパイル時間0.09秒
func fn() -> Int {
let a: Int? = nil
let b: Int? = nil
let c: Int? = nil
var res: Int = 999
if let a = a {
res += a
}
if let b = b {
res += b
}
if let c = c {
res += c
}
return res
}