Wie kann man aus einer Schleife innerhalb eines Schalters ausbrechen?

Ich schreibe einen Code, der so aussieht:

while(true) {
    switch(msg->state) {
    case MSGTYPE: // ... 
        break;
    // ... more stuff ...
    case DONE:
        break; // **HERE, I want to break out of the loop itself**
    }
}

Gibt es einen direkten Weg, um das zu tun?

Ich weiß, dass ich ein Flag verwenden und aus der Schleife ausbrechen kann, indem ich unmittelbar nach dem Schalter eine bedingte Unterbrechung vornehme. Ich möchte nur wissen, ob C ++ bereits ein Konstrukt dafür hat.

Antworten auf die Frage(19)

Ihre Antwort auf die Frage