Switch Cases sollten fast immer einen default
Case haben.
Gründe für die Verwendung von a default
1.Um einen unerwarteten Wert zu "fangen"
switch(type)
{
case 1:
//something
case 2:
//something else
default:
// unknown type! based on the language,
// there should probably be some error-handling
// here, maybe an exception
}
2. Um 'Standard'-Aktionen zu behandeln, bei denen es sich um besondere Verhaltensweisen handelt.
Sie sehen dies VIEL in menügesteuerten Programmen und Bash-Shell-Skripten. Dies wird möglicherweise auch angezeigt, wenn eine Variable außerhalb des Switch-Falls deklariert, aber nicht initialisiert wird und in jedem Fall auf etwas anderes initialisiert wird. Hier muss die Standardeinstellung ebenfalls initialisiert werden, damit der Zeilencode, der auf die Variable zugreift, keinen Fehler auslöst.
3. Um jemandem, der Ihren Code liest, zu zeigen, dass Sie diesen Fall behandelt haben.
variable = (variable == "value") ? 1 : 2;
switch(variable)
{
case 1:
// something
case 2:
// something else
default:
// will NOT execute because of the line preceding the switch.
}
Dies war ein stark vereinfachtes Beispiel, aber der Punkt ist, dass sich jemand, der den Code liest, nicht fragen sollte, warum er variable
nicht etwas anderes als 1 oder 2 sein kann.
Der einzige Fall, den ich mir vorstellen kann , NICHT zu verwenden, default
ist, wenn der Schalter etwas überprüft, bei dem es ziemlich offensichtlich ist, dass jede andere Alternative glücklich ignoriert werden kann
switch(keystroke)
{
case 'w':
// move up
case 'a':
// move left
case 's':
// move down
case 'd':
// move right
// no default really required here
}