12 Stimmen

Erlang : Rückgabe aus einer Funktion

Ich habe eine Funktion, in der ich eine Reihe von einzelnen Fallanweisungen habe.

case ... of
     ...
end,

case ... of
     ...
end,

...

usw.

Ich möchte die Funktion sofort verlassen, wenn eine bestimmte Fallbedingung in einer der Fallanweisungen eintritt, so dass die nächste Fallanweisung nicht geprüft wird und die Funktion einfach beendet wird. Wie kann ich das tun?

1voto

ja. Punkte 1319

Fangen/Werfen verwenden

Der Anrufer sagt:

X = (catch foo(A, B)).

dann schreiben Sie

foo(A, B) ->
    case ... of
     ...throw(X) ..
    end,

    case ... of
     ... throw (Y)
    end,
    ...

Dies wird allgemein als schlechte Programmierpraxis angesehen - da das Programm mehrere Ausgangspunkte hat und schwer zu durchschauen ist

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X