最終更新:2013-01-09 (水) 11:45:38 (4117d)  

ブロックオブジェクト
Top / ブロックオブジェクト

Mac OS X 10.6/iOS 4.0で導入されたブロックオブジェクトは、CおよびObjective-Cのコードに組み込むことのできる、Cレベル言語の構成体です。

  • ブロックオブジェクトは、基本的には匿名関数およびその関数に伴うデータであり、ほかの言語ではクロージャラムダと呼ばれているものです。
  • ブロックは特に、コールバック?として使用したり、または実行するコードと関連するデータを簡単に組み合わせる手段が必要な場合に使用できます。
戻り値の型 (^ブロック名)(引数);
ブロック名 = ^(引数){};

一般的なシナリオ

  • デリゲートおよびデリゲートメソッド?の代替として
  • コールバック関数?の代替として
  • 1回限りの操作の終了ハンドラを実装するため
  • コレクション内のすべての要素に対するタスクの実行を容易にするため
  • ディスパッチキューとともに非同期タスクを実行するため

関連