不能将不可变值作为inout参数传递:文字不可变,为什么?

时间:2016-07-10 19:16:21

标签: ios swift function

我想创建一个函数来交换2个变量!但对于新的快速,我不能使用&var;' var' ....

$

1 个答案:

答案 0 :(得分:4)

文字不能作为inout参数传递,因为它们本质上是不可变的。

改为使用两个变量:

var i=5
var j=8
swapF(a:&i, with: &j)

此外,使用最后一个Swift 3快照,inout应该放在类型附近,函数的原型变为:

func swapF(a:inout Int, with b:inout Int )