2012-02-03 167 views
4

Objective C中的^字符是什麼意思?就像下面的代碼目標C中的^是什麼意思?

TWTweetComposeViewControllerCompletionHandler 
    completionHandler = 
    ^(TWTweetComposeViewControllerResult result) { 
     switch (result) 
     { 
      ... 
     } 
     [self dismissModalViewControllerAnimated:YES]; 
    }; 
+1

它被稱爲插入符號。它也是C中的按位異或。10^4 = 14。 – vakio 2012-02-03 09:40:51

回答

8

它表示一個「塊」,一段代碼可以打包成一個對象並在以後使用。在您的示例中,它指定了稍後調用的完成處理程序,大概是當用戶單擊「確定」或某個類似的按鈕關閉警報時。

塊也可以與Grand Central Dispatch一起使用,在這種情況下,它們用於生成可以在另一個線程上同步和異步運行的代碼單元。

0

它作爲塊定義的一部分:

^(return_type retval) { 
    statements; 
} 

你會認爲這是塊聲明過的一部分。