7

重複の可能性:
switch-case で中かっこを使用する場合の 'break' ステートメント

パッケージをマージしているときに、このステートメントに出くわしました

switch (a)
{

case 1:
    {
        string str = "a is 1";
        cout << str << endl;
    }
    break;
case 2: ...
...

}

私の質問は、ケース1でブレークをスコープの内側または外側に配置することは重要ですか? ここで彼らは外に置きます。私はこれを試しましたが、違いは見られませんでした。違いがないことは私には理にかなっていますが、私のチームの PHD を持つ人は、違いがあるかもしれないことは覚えているが、それが何であるかは思い出せないと言っていました..

4

2 に答える 2

11

ブレークをスコープの内側に置くか外側に置くかに違いはありません。

于 2012-08-23T17:08:32.327 に答える
1

breakブロック内に到達するとswitch、このブロック外の次のステートメントswitchが実行されます。breakしたがって、をスコープの内側または外側のどこに配置してもかまいません。

于 2012-08-23T17:11:52.310 に答える