2010-11-30 5 views
0

_ (밑줄)은 변수/메소드/클래스가 API 전용이며 다른 프로그래머는 사용해서는 안된다는 것을 알리기 위해 사용되었습니다.Objective-C에서 "_"과 "__"의 차이점은 무엇입니까?

__ (이중 밑줄)은 어떨까요? 애플 문서에서이 예 __block BOOL found = NO;

에서

블록 개체.

또한 누구나 나를 포인터의 개념을 이해하는 데 도움이 될 수 있습니까? **var 일부 답변을 읽었지만 실제로 얻지 못했습니다. 언제 어떻게 사용해야합니까?

답변

5

단일 밑줄은 개인 API (메서드 및 경우에 따라 ivars)에 사용됩니다. 그들의 주요 목적은 이름 충돌을 방지하는 것입니다.

__block은 새 블록 API에 대한 키워드입니다. 일반적으로 두 개의 밑줄 키워드는 컴파일러 용입니다. NSError를 포인터에 대한 포인터를 들어

좋은 예입니다 방법은 (값을 반환하지) 매개 변수의 일환으로 새로운 NSError 개체를 반환하고자 할 때, 당신은, 그래서 형 NSError *의 변수에 대한 포인터가 필요하면 그것을 할당 할 수 있습니다. 간단한 포인터를 사용하면 객체에만 액세스 할 수 있지만 다시 할당 할 수는 없습니다.

+0

정말 도움이되었습니다. 감사! –

관련 문제