Smart Device/Swift
Swift 함수 #9 In-Out 파라미터
언덕너머에
2015. 6. 2. 09:31
In-Out 파라미터
함수에 파라미터로 넘기는 값을 변경할 수 있는 기능을 제공한다.
- 함수를 정의할 때 파라미터 앞에 inout이라는 키워드를 붙인다.
- 함수를 호출할 때 파라미터 앞에 & 기호를 사용한다.
예제)
func swapTwoInts(inout a: Int, inout b: Int) {
let temporaryA = a
a = b
b = temporaryA
}
var aInt = 100
var bInt = 200
println("변수 a의 값은 \(aInt)이고, 변수 bInt의 값은 \(bInt)이다.")
//--> 변수 a의 값은 100이고, 변수 bInt의 값은 200이다.
swapTwoInts(&aInt, &bInt)
println("변수 a의 값은 \(aInt)이고, 변수 bInt의 값은 \(bInt)이다.")
//--> 변수 a의 값은 200이고, 변수 bInt의 값은 100이다.
* In-Out 파라미터는 디폴트 값을 가질 수 없다. In-Out 파라미터의 값을 변경하는 역할을 하므로 디폴트 값을
사용하도록 허용되지 않는다.