C++- Schalter


C++ Switch-Anweisungen

Verwenden Sie die switchAnweisung, um einen von vielen auszuführenden Codeblöcken auszuwählen.

Syntax

switch(expression) {
  case x:
    // code block
    break;
  case y:
    // code block
    break;
  default:
    // code block
}

So funktioniert es:

  • Der switchAusdruck wird einmal ausgewertet
  • Der Wert des Ausdrucks wird mit den jeweiligen Werten verglichen case
  • Wenn es eine Übereinstimmung gibt, wird der zugehörige Codeblock ausgeführt
  • Die Schlüsselwörter breakund defaultsind optional und werden später in diesem Kapitel beschrieben

Das folgende Beispiel verwendet die Wochentagsnummer, um den Wochentagsnamen zu berechnen:

Beispiel

int day = 4;
switch (day) {
  case 1:
    cout << "Monday";
    break;
  case 2:
    cout << "Tuesday";
    break;
  case 3:
    cout << "Wednesday";
    break;
  case 4:
    cout << "Thursday";
    break;
  case 5:
    cout << "Friday";
    break;
  case 6:
    cout << "Saturday";
    break;
  case 7:
    cout << "Sunday";
    break;
}
// Outputs "Thursday" (day 4)

Das Break-Schlüsselwort

Wenn C++ ein break Schlüsselwort erreicht, bricht es aus dem Switch-Block aus.

Dadurch wird die Ausführung weiterer Code- und Falltests innerhalb des Blocks gestoppt.

Wenn eine Übereinstimmung gefunden wird und die Arbeit erledigt ist, ist es Zeit für eine Pause. Weitere Tests sind nicht erforderlich.

Eine Unterbrechung kann viel Ausführungszeit einsparen, da sie die Ausführung des gesamten restlichen Codes im Schalterblock "ignoriert".



Das Standardschlüsselwort

Das defaultSchlüsselwort gibt Code an, der ausgeführt werden soll, wenn keine Fallübereinstimmung vorhanden ist:

Beispiel

int day = 4;
switch (day) {
  case 6:
    cout << "Today is Saturday";
    break;
  case 7:
    cout << "Today is Sunday";
    break;
  default:
    cout << "Looking forward to the Weekend";
}
// Outputs "Looking forward to the Weekend"

Hinweis: Das Schlüsselwort default muss als letzte Anweisung im Schalter verwendet werden und benötigt keinen Umbruch.


C++-Übungen

Testen Sie sich mit Übungen

Übung:

Füge die fehlenden Teile ein, um die folgende switchAussage zu vervollständigen.

int day = 2;
switch () {
 1:
    cout << "Saturday";
    break;
 2:
    cout << "Sunday";
    ;
}