현재 일부 이전 Objective-C 코드를 Swift로 변환 중이고 일부 C 코드가 달라 붙어 있습니다.Objective-C/C 콜백 코드를 Swift로 변환
콜백 기능이 필요한 내부 API가 있습니다.
DoSomethingWithCallback(myCallbackType callback);
콜백 유형이 내 목표 - C/C 코드에서
typedef void(*myCallbackType)(struct customStruct *);
지정되고 난 그냥
DoSomethingWithCallback(functionThatActsAsCallback);
와
static void functionThatActsAsCallback(struct customStruct *myStruct) {
..
}
와 부를 수있는 모든 것을 추가
이것을 Sw로 변환하려고했습니다. 하여 콜백 함수
func functionThatActsAsCallback(myStruct: UnsafePointer<customStruct>) -> Void {
}
을 만들어 IFT 및 오류
유형의 값을 변환 할 수 없습니다 '(UnsafePointer) 결과
DoSomeThingWithCallback(functionThatActsAsCallback)
를 통해 전화를하려고 노력 -> Void '를 인수 유형'myCallbackType! '에 추가하십시오.
이 오류가 발생하는 이유와 해결 방법이 확실하지 않습니다. 어떤 힌트
당신은 당신의 유형 및 기능을 사용하기 전에, 스위프트로 수입하는 방법을 확인해야
유사한 문제를 설명하는 게시물이 거의 없습니다. [1] (http://stackoverflow.com/questions/37244438/cannot-convert-value-of-type-unsafepointerdouble-to-expected-argument-type), [ 2] (http://stackoverflow.com/questions/31626410/how-do-you-convert-a-unsafemutablepointervoid-to-uint8). – user3078414