本节书摘来自异步社区《Swift 权威指南》一书中的第6章,第6.8节输入输出参数,作者 李宁,更多章节内容可以访问云栖社区“异步社区”公众号查看
6.8 输入输出参数
函数的参数都是值传递,即使参数是变量,在函数体内修改了参数值,当函数结束后,也不能将修改结果保留。如果要想利用参数传递值,可以用inout关键字将参数修改为输入输出参数。这样在函数体内修改该参数值后,当函数结束后,仍然可以保留修改的结构。
// name是输入输出参数
func process7(inout name:String, age:Int) -> String
{
name = "Mike"
return "Name:" + name + "Age:" + String(age)
}
var name:String = "bill"
println(process7(&name, 40));
// 输出name最后的值
println(name)
在传递输入输出参数值时应注意如下几点。
指定输入输出参数值时必须使用变量,不能使用常量或值。
指定变量时前面需要加&。
在声明变量时,必须初始化。