2012-02-03 6 views
4

Objective Cの^文字は何を意味しますか?次のコード目的Cの^はどういう意味ですか?

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

キャレットと呼ばれています。また、10^4 = 14というビット単位のXORです。 – vakio

答えて

8

これは、オブジェクトにパッケージ化して後で使用できるコードの1つを表す「ブロック」を表します。あなたの例では、後で呼び出される完了ハンドラを指定します。おそらく、ユーザが「OK」または同様のボタンをクリックしてアラートを閉じるとします。

ブロックはGrand Central Dispatchと併用することもできます。その場合、ブロックは同期と非同期の両方で別のスレッドで実行できるコード単位を生成するために使用されます。

0

のようにブロックの定義の一部として使われています:

^(return_type retval) { 
    statements; 
} 

あなたはあまりにもブロックの宣言の一部としてそれを見ることができます。

2

これは「ブロック」です。Apple-Developer-docでこれについて読むことができます。主にマルチスレッドに使用されています。

関連する問題