Swift – Interacting with C Pointers
https://developer.apple.com/swift/blog/?id=6
Objective-C 및 C의 API들은 종종 포인터를 사용한다. Swift의 데이터 타입들은 포인터 기반의 Cocoa API들과 자연스럽게 어울리도록 디자인되었고, Swift는 포인터를 파라미터로 일부 다루고 있다.
포인터와 in/out 파라미터
C와 Objective-C의 함수는 복수의 값을 리턴하지 못하기 때문에 부가정보를 함수 외부로 내보내기 위해서 포인터를 사용한다. Swift는 이런 경우 inout
어트리뷰트를 가진 파라미터를 정의할 수 있어서 Swift에서는 &
문법을 사용하여 var
변수의 포인터를 넘겨줄 수 있다. 예를 들어 UIColor
의 getRed(_:green:blue:alpha:)
메소드는 4개의 CGFloat*
포인터를 받는데 이는 다음과 같이 사용하여 4개의 변수에 대해 각 컬러 값을 얻어낼 수 있다.더 보기 »Swift – Interacting with C Pointers