スコープをかなり頻繁に制限していることに気づきました。これにより、コードがより明確になり、変数をより簡単に再利用できるようになります。これは、新しいスコープの開始時に変数を宣言する必要がある C で特に便利です。
これが私の言いたいことの例です。
{
int h = 0;
foreach (var item in photos)
{
buffer = t.NewRow();
h = item.IndexOf("\\x\\");
buffer["name"] = item.Substring(h, item.Length - h);
t.Rows.Add(buffer);
}
}
この例では、反復ごとに初期化せずに h のスコープを制限しました。
しかし、他の多くの開発者がこれを頻繁に行っているのを見たことはありません。何故ですか?これを行うことの欠点はありますか?