2011-01-17 1 views

답변

5

이것을 block이라고합니다. 다른 언어의 익명 함수와 비슷합니다. 즉, 다른 루틴의 일부로 코드 블록을 실행하는 데 사용됩니다 (귀하의 경우 애니메이션). 블럭은 클래스에서 one-use 메소드를 만들고 싶지 않기 때문에 셀렉터를 performSelector:과 같은 Objective-C 메소드에 전달할 수 있습니다.

^은 블록의 심볼입니다. { }의 코드는 메서드의 { } 블록의 코드와 똑같습니다. 당신의 주어진 코드에서

^(int a, int b) { 
    NSLog(@"a + b = %d", a + b); 
} 

, ^ {}^(void) {}과 동일, 즉 블록이 매개 변수를 고려하지 않습니다 :

일부 블록은 C 함수와 유사 지정된 매개 변수를 가지고있다.

+0

답변 해 주셔서 감사합니다. –