Swift — inout 關鍵字
如果你想要一個函數可以修改參數的值,並且想要在這些修改在函數調用結束後仍然存在,那 麽就應該把這個參數定義為輸入輸出參數(In-Out Parameters)。
如果你想要一個函數可以修改參數的值,並且想要在這些修改在函數調用結束後仍然存在,那 麽就應該把這個參數定義為輸入輸出參數(In-Out Parameters)。
let defaultColorName = “red”
var userDefinedColorName: String? // default 值为 nil
var colorNameToUse = userDefinedColorName ?? defaultColorName
// userDefinedColorName 的值为空,所以 colorNameToUse 的值为 “red”
userDefinedColorName = “green”
colorNameToUse = userDefinedColorName ?? defaultColorName
// userDefinedColorName 非空,因此 colorNameToUse 的值为 “green”
心得:
用法是針對 nil 的判斷所做的優化運算元, 可以直接解封 nil 的可選值並給予對應的預設值。
機器設定 : Swift4 + iOS11 + Xcode9
UINavigationController 有內建參數可以將標題放大
[閱讀全文…]