는 long long
A와 정의 C 매크로 NSURLResponseUnknownLength
가 : 방식으로 인해 매크로에길고 긴 C 매크로를 Swift로 연결하는 방법은 무엇입니까? 재단에서
#define NSURLResponseUnknownLength ((long long)-1)
스위프트에 브리지 있으며,이 상수는 아니지만 스위프트 응용 프로그램에서, 오브젝티브 C 응용 프로그램에 액세스 할 수 있습니다. 이러한 매크로를 신속하게 보이게하려면 어떻게해야합니까? 내 브리지 헤더에 글로벌 C 함수의 매크로를 포장하려고했습니다
:
long long getNSURLResponseUnknownLength() {
return NSURLResponseUnknownLength;
}
그러나 getNSURLResponseUnknownLength()
에 접근하는 것은 Undefined symbols for architecture
빌드 오류가 발생합니다.
당신의 포장 솔루션 (엑스 코드 8 베타 6에서 테스트) 나를 위해 작동합니다. 'print (getNSURLResponseUnknownLength())'는'-1'을 컴파일, 실행, 인쇄합니다. –
@MartinR 흥미롭게도, Xcode 7.3.1에서는 작동하지 않습니다. 어딘가에서 뭔가 잘못하고 있는거 같아? – JAL
Btw, 여기에 비슷한 문제가 있습니다. 동일한 해결책으로 http://stackoverflow.com/questions/34042017/macro-is-working-in-objective-c-but-not-it-swift입니다. –