Wie gehen Sie ausnahmesicher mit Ressourcen in MATLAB um? (wie "versuchen ... endlich")

Da es in MATLAB keine finally-Klausel für den try-catch-Block gibt, schreibe ich viel Code wie den folgenden:

fid = fopen(filename);
if fid==-1
    error('Couldn''t open file');
end
try
   line = getl(fid);
catch ME
   fclose(fid);
   rethrow ME;
end
fclose(fid);

Ich finde die fclose-Funktion an zwei Stellen hässlich und fehleranfällig.

Gibt es dafür einen besseren Weg?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage