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 파라미터의 값을 변경하는 역할을 하므로 디폴트 값을
사용하도록 허용되지 않는다.
'Smart Device > Swift' 카테고리의 다른 글
Swift mutating (0) | 2015.06.09 |
---|---|
Swift 함수 #10 Function Type (0) | 2015.06.02 |
Swift 함수 #8 Default 파라미터 값 설정 (0) | 2015.06.02 |
Swift 함수 #7 동일한 내부와 외부 파라미터 명 사용 (0) | 2015.06.02 |
Swift 함수 #6 외부 파라미터 명(External Parameter Names) 사용 (0) | 2015.06.02 |