Objective C __blockロジック

Objective Cのプログラムを書いていると

 

 __block NSMutableArray* assetArray = NSMutableArray.new;

 

という処理を書いているサイトに出会った。

 

 __blockってなんだろう?と調べてみると、

 

 関数の中で宣言され,その関数の実行開始時から 終了時までの間,その値を保持する.

 

とある。

確かに関数内で使用されていた。

さらに、関数内でnewしているのに関わらず、releaseしていないところを見ると、

どうやら、自動でメモリを開放してくれる処理ではないかと推測している。

 

といあえず実装してみて動作を見てみよう。