C ++では、次のような関数内にコードのブロックを作成するのは悪い習慣ですか?
bool f()
{
{
double test = 0;
test = // some other variable outside this function, for example.
if (test == // some value)
return true;
}
{
double test = 0;
test = // some variable outside this function, different from the last one.
if (test == // some value)
return true;
}
return false;
}
これを行うポイントは、同じタイプのプロシージャに対して、同じ変数名の「テスト」を複数回使用することです。実際のプロジェクトでは、複数の変数があり、複数のテストを実行しています。テストがどのように似ているかを考慮して、テストごとに異なる名前の新しい変数を作成し続けるのは本当に嫌です。
コードのブロックを挿入して、各テストの後に変数がスコープ外になり、その名前を再び使用できるようにすることは悪い習慣ですか?または、別の解決策を探す必要がありますか?すべてのテストに同じ変数セットを使用することを検討したことに注意する必要があります(各テストが終了した後、それらをすべて0に設定するだけです)が、これは悪い習慣であるとの印象を受けました。