最近、私はいくつかのコードをデバッグしようとしていて、私が間違っていることについて頭がおかしくなりました。私の問題の簡略版は以下のとおりです。
for(int x = 0; x < [myArray count]; x++);
{
//perform some action
}
問題は、私が実行したいアクションが1回だけ発生するということでした。もちろん、最終的に問題に気付いたのは、forループの最後に誤って余分なセミコロンが含まれていたことです。
for(int x = 0; x < [myArray count]; x++);<---- Oops!
{
//perform some action
}
しかし、それから私は疑問に思いました...なぜそのコードはある種の仕事でさえあったのですか?何が起こっていたのかというと、forループが実行されていて、以下のコードが「匿名ブロック」として実行されていたことがわかりました。
Objective Cの匿名ブロックのポイントは何ですか?それらはいつ/どこで役立ちますか?
私のコードがXcodeで何らかの警告を生成しないのはなぜですか?コードの古いセクションを中かっこで囲んで、突然匿名ブロックとして実行することができると思いますか?