C++ 클래스 메서드에서 객관적인 C 메서드를 호출 할 수 있습니까? 나는 이것이 어느 정도까지 대답되었다는 것을 알고 있지만 객관적인 C 인스턴스 변수 (self에 대한 포인터)를 사용하여 메소드를 호출하려고 할 때 '선언되지 않은 식별자 사용'을 얻었으므로 허용 된 응답 중 아무 것도 나를 위해 작동하지 않는 것으로 알고 있습니다. .C++ 클래스 메서드에서 객관적인 C 메서드 호출
@interface RTSPHandler : NSObject {
id thisObject;
}
도 구현 :
-(int)startRTSP:(NSString *)url {
thisObject = self;
// start rtsp code
}
void DummySink::afterGettingFrame(unsigned frameSize, unsigned numTruncatedBytes,
struct timeval presentationTime, unsigned) {
[thisObject receivedRTSPFrame:fReceiveBuffer];
}
-(void)receivedRTSPFrame:(NSMutableData*)data {
// decode frame..
}
오류 '에서 thisObject'
귀하의 C++ 파일의 확장자는 .mm입니까? obj-C++ 파일에 obj-c와 C++ 만 혼합 할 수 있습니다. – Fonix
예. 그렇습니다.이 문제를 언급하는 것을 잊었습니다! – Md1079
'RTSPHandler'와'DummySink'의 관계는 무엇입니까? – molbdnilo