1. ホーム
  2. c++

[解決済み] if文から「抜け出す」方法は?[クローズド]

2023-05-20 22:19:02

質問

私は、"break" から抜け出したいif文を持っています。 私はbreakが本当にループのためだけであることを理解しています。 誰かが助けることができますか?

私がやろうとしていることの例を必要とする人のために。

if( color == red )
{
...
if( car == hyundai ) break;
...
}

どのように解決するのですか?

ネストされたif。

if (condition)
{
    // half-massive amount of code here

    if (!breakOutCondition)
    {
        //half-massive amount of code here
    }
}

ダウンボーティングされる危険を冒してでも -- 過去に私がそうでした -- 別の (不人気な) 選択肢として、もちろん恐ろしい goto break 文は偽装された goto に過ぎないのです。

そして最後に、私は、あなたのデザインは、おそらく大規模な if 文が必要ないように、また、そこから抜け出すことができるように改善することができるという一般的な感情を繰り返します。 少なくとも、2 つのメソッドを抽出し、return を使用することができるはずです。

if (condition)
{
    ExtractedMethod1();

    if (breakOutCondition)
        return;

    ExtractedMethod2();
}