A는

2011-10-28 7 views
3

내가 developer.apple.com에서 샘플 코드 SimpleGestureRecognizer라고하고 main.m에서 프로그램이 실패 보내 다운로드 @autoreleasepool 표현에 관한 실패 실패는 프로그램에서 예기치 않은 '@'입니다. 인터넷에서 검색 한 결과 누군가에게 동일한 문제가 발생하지만 동일한 문제가있는 사람이 없었습니다.A는

이 프로그램이 @autoreleasepool이라는 표현을 모르는 이유를 알고 계십니까? 내 Xcode의 버전이

3.2.6이 LLVM 3.0에 도입 된 앞으로

답변

13

@autoreleasepool에 도움과 가정 사항 주셔서 감사하다, 엑스 코드 4.2에서 사용할 수있는 컴파일러. Xcode 3.2.6을 사용하고 있기 때문에 LLVM 1.6과 GCC가 있으며 어느 쪽도 해당 지시어를 인식하지 못합니다.

@autoreleasepool 대신 NSAutoreleasePool을 사용하도록 코드를 변경하여 Xcode 3.2.6으로 빌드 할 수 있습니다. 예를 들어, 대체 :

@autoreleasepool { 
    … 
} 

로 :

NSAutoreleasePool *pool = [NSAutoreleasePool new]; 
… 
[pool drain];