Hey, ich nehme an, Sie könnten eine Try-Catch-Kombination verwenden, um einen etwas unerwarteten Fehler zu behandeln und etwas dagegen zu tun.
Als Beispiel
function [ output ] = test(input)
Bmat = [ 1 1 1 ] % Some matrix
try
input*B;
catch ME
disp(ME.message)
return; % This is the statement that exits your function
end
end
Wenn Sie
>> test([1 1 1])
Es wird nicht, da die Variablen ‚Eingang‘ und ‚B‘ nicht übereinstimmen inneren Dimensionen arbeiten laufen, aber die ‚versuchen‘ Anweisung wird eine Ausnahme zum "fangen" werfen, und tun, was auch immer Sie von dort wollen. In diesem Fall wird eine Fehlermeldung in der Befehlszeile angezeigt und die Funktion beendet.
Die Variable 'ME' ist hier nur ein MATLAB-Objekt für die Fehlerbehandlung, und ME.message speichert eine Zeichenfolge, die den Fehlertyp enthält, den der Interpreter abgefangen hat.
Ich lese gerade Ihre Frage noch einmal ... Ich nehme an, der Befehl 'Return' ist wahrscheinlich, was Sie wirklich wollen, Sie können es verwenden, um jede Logik oder Schleife Anweisungen sowie Funktionen zu beenden.
Sie können mehr über die ‚Rückkehr‘ Befehl und Fehler aus der Dokumentation MATLAB Handhabung lesen,
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/return.html
Wenn es mehrere Orte, wo eine Funktion verlassen muss, führt diese Lösung zu einem Baum des Laufes es oder nicht Art von wenn Aussagen. Unpraktisch. – Argyll