ブロック外の変数をブロック内で使う | 初心者がiPhoneアプリを作るブログ

初心者がiPhoneアプリを作るブログ

初心者がiPhoneアプリを作るブログです.
入門レベルですので開発初心者にも,できるだけ分かるように丁寧に説明していきます(多分).

おそらくObjective-Cから入った人には基本的なことなのでしょうが,
blockに関することです.

block内で処理した値をblock外の変数に代入したい場面がありますよね.

ありますよね????

そのサンプルを備忘録的に掲載します.

__block int var = 0;

void (^func)(void) = ^{
    var = 1;
};

func();

NSLog(@"var: %d", var);


このように,blockの外で宣言する変数の前に
__block
の修飾子を付ける必要があります.

まぁそれだけなんですけどね.

HOMEに戻る