Можно ли передать закрытие из программы Swift в API, где соответствующий аргумент помечен как CFunctionPointer
?Конвертировать быстрое закрытие на CFunctionPointer?
Я попадались показаний (например here), что это не было возможно с (теперь устаревшим) бета-версии Xcode 6.
Однако, вы не можете вызвать указатель на функцию C или преобразовать замыкание to C функция указатель типа.
Возможно ли это сейчас, и если да, то как?
Например, как можно определить замыкание в Swift, которое будет принято как AudioServicesSystemSoundCompletionProc
в вызове AudioServicesAddSystemSoundCompletion
?
This Ответ использует как Swift, так и Objective-C, чтобы прийти к решению. Возможно ли это с классом Swift?
Возможный дубликат [Objective-C Wrapper для CFunctionPointer для быстрого закрытия] (http://stackoverflow.com/questions/26138658/objective-c-wrapper-for-cfunctionpointer-to-a-swift-closure) –