我是斯威夫特的新手,我正在努力学习' inout'关键词。我在" swift编程语言2.1"中看到了这段代码。我的问题是,为什么会有"&" in" swap(& someInt,& anotherInt)"。它代表什么?它的功能是什么?
func swapTwoInts(inout a: Int, inout _ b: Int){
let temporaryA = a
a = b
b = temporaryA
}
var someInt = 3
var anotherInt = 107
swap(&someInt, &anotherInt)
print("someInt is now \(someInt) and anotherInt is now \(anotherInt)")
答案 0 :(得分:1)
就像在C ++中通过引用传递一样,代码调用位中的&符号告诉编译器您允许函数swapTwoInts
更改someInt
和anotherInt
。如果您没有将&符号放在那里,则代码将无法编译。