나는 iPhone 응용 프로그램을 작성 중입니다. .mm 파일로 메소드를 호출해야합니다. 문제의 여기 단순화 된 버전 :목표 C 클래스에서 .mm 파일에 대한 메서드 호출하는 방법
ViewHelper.h
- (void)testMtd;
ViewHelper.mm는
- (void)testMtd{
NSLog(@"Call reached mm");
}
SomeViewController.m (가져 오기 (이 .mm 예고) ViewHelper.h에서 명확성을 위해 생략)
- (void)someCallerMtd{
NSLog(@"before");
[viewHelper testMtd]; //call does not work
NSLog(@"after");
}
로그에 "before"및 "after"가 표시되지만 "Call reached mm"이 인쇄되지 않습니다. .mm 파일에서 obj 메소드를 호출하는 특별한 규칙이 있습니까? 내가 여기서 무엇을 놓치고 있니?
은 어떻게 선언하고'viewHelper'를 초기화 했습니까? – sch
** .mm ** 파일 안에 클래스를 작성하는 경우, 이는 여전히 일반적인 Objective-C 클래스로 남아 있습니다. 변경되는 유일한 점은 ** .mm ** 파일 내부에서 C++ 코드를 호출 할 수 있다는 것입니다. – sch
@sch 예 init 부분을 놓쳤습니다. 포인터와 설명을위한 감사합니다 reg .mm – Ravi