Die guard
Anweisung benötigt ein etwas haben, um den Fluss des Programms vom umschließenden Umfang zu übernehmen (z wahrscheinlichste Fall ist return
aus der Funktion zurück). Dies ist erforderlich, da die Bedingung, dass der Schutz bewacht wird, nicht gültig ist. Der Programmablauf muss also woanders hin gehen!
Documentation:
Die else-Klausel einer Schutzerklärung erforderlich ist, und entweder eine Funktion markiert mit dem noreturn Attribut oder Transferprogramm Kontrolle außerhalb der umschließenden Umfang des Wächters Anweisung eines der nennen müssen folgende Aussagen:
- Rückkehr
- Pause
- weiter
- throw
Vielleicht möchten Sie einen Kommentar für den Downvote hinterlassen? Es ist offensichtlich ein paar Leuten diese Antwort geholfen ... –