C# コードを見ると、次のようなパターンがよく見られます。
DataType[] items = GetSomeItems();
OtherDataType[] itemProps = new OtherDataType[items.Length];
int i = 0;
foreach (DataType item in items)
{
// Do some stuff with item, then finally
itemProps[i] = item.Prop;
i++;
}
for ループは のオブジェクトを反復処理しますが、反復処理用のカウンター ( )items
も保持します。私は個人的に、この余分なものがぶらぶらしているのが好きではなく、代わりにおそらく次のようなことをするでしょう:i
itemProps
i
DataType[] items = GetSomeItems();
OtherDataType[] itemProps = new OtherDataType[items.Length];
for (int i = 0; i < items.Length; i++)
{
// Do some stuff with items[i], then finally
itemProps[i] = items[i].Prop;
}
私が気付いていない最初のアプローチには、おそらくいくつかの利点がありますか? これは、誰もが凝ったforeach (...)
構文を使おうとした結果でしょうか? これについてのあなたの意見に興味があります。