3
Dans Nim, le noReturn pragma marque un proc qui ne revient jamais.Quelle est la différence entre retourner void et {.noreturn.}?
En quoi est-ce différent d'une fonction qui renvoie void
?
Dans Nim, le noReturn pragma marque un proc qui ne revient jamais.Quelle est la différence entre retourner void et {.noreturn.}?
En quoi est-ce différent d'une fonction qui renvoie void
?
De retour void
signifie que la fonction ne renvoie rien:
proc saySomething(): void =
echo "something"
Les supports vides ainsi que les : void
sont facultatifs:
proc saySomething =
echo "something"
Annoter une fonction avec noReturn
signifie que la fonction ne reviendra pas du tout :
proc killTheProgram {.noReturn.} =
quit(0)
proc raiseSomething {.noReturn.} =
raise newException(ValueError, "Something")