Inout 参数
如果使用 inout
关键字标记,函数可以修改传递给它们的参数。将 inout
参数传递给函数时,调用者必须向传递的变量添加 &
。
func updateFruit(fruit: inout Int) {
fruit -= 1
}
var apples = 30 // Prints "There's 30 apples"
print("There's \(apples) apples")
updateFruit(fruit: &apples)
print("There's now \(apples) apples") // Prints "There's 29 apples".
这允许将引用语义应用于通常具有值语义的类型。