興味深いことに、この例では次のようになります。
[array1 enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
[array2 enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
//
}];
}];
内側のブロック変数 (obj、idx、stop) の名前を変更して、外側の変数をシャドウしないようにするベスト プラクティスは何ですか? idx2, stop2 はハッキーに見えますが、最も理にかなっている場合があります (2 つ以上のブロックが関係している場合を考慮してください)。