C++- schakelaar


C++ Switch-verklaringen

Gebruik de switchinstructie om een ​​van de vele codeblokken te selecteren die moeten worden uitgevoerd.

Syntaxis

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

Dit is hoe het werkt:

  • De switchuitdrukking wordt eenmaal geëvalueerd
  • De waarde van de uitdrukking wordt vergeleken met de waarden van elk case
  • Als er een overeenkomst is, wordt het bijbehorende codeblok uitgevoerd
  • De breaken defaulttrefwoorden zijn optioneel en worden later in dit hoofdstuk beschreven

In het onderstaande voorbeeld wordt het weekdagnummer gebruikt om de naam van de weekdag te berekenen:

Voorbeeld

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)

De pauze Trefwoord

Wanneer C++ een break trefwoord bereikt, breekt het uit het schakelblok.

Dit stopt de uitvoering van meer code en case-tests binnen het blok.

Wanneer een match is gevonden en de klus is geklaard, is het tijd voor een pauze. Meer testen is niet nodig.

Een pauze kan veel uitvoeringstijd besparen omdat het de uitvoering van de rest van de code in het schakelblok "negert".



Het standaard trefwoord

Het defaultsleutelwoord specificeert een code die moet worden uitgevoerd als er geen case match is:

Voorbeeld

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"

Opmerking: het standaardsleutelwoord moet worden gebruikt als de laatste instructie in de schakelaar en hoeft niet te worden onderbroken.


C++-oefeningen

Test jezelf met oefeningen

Oefening:

Voeg de ontbrekende delen toe om de volgende switchverklaring af te ronden.

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