Come From
 
StartSeite | Neues | TestSeite | ForumSeite | Teilnehmer | Kategorien | Index | Hilfe | Einstellungen | Ändern

Nicht ganz ernstgemeinte Alternative zum GoTo? Befehl, entnommen der SpracheIntercal. Siehe auch http://www.fredbox.com/gotoless.html

[von EinGutesExceptionBeispiel]

  error=0;
  file=FileOpenMess("test.txt"); // generates default error message
  if(file==NULL) {
    error=-1; goto finalize;
  }
  status=FileWriteMess(file,"name=" + name); // generates default error message
  if(status) {
    error=-1; goto finalize;
  }
  status=FileWriteContent(file);
  if(status) {       
    message(...);
    error=-1; goto finalize;
  }
finalize:
  FileClose(file); // tolerant gegen file==NULL
  return error;

Aber, aber, es geht doch auch ohne 'goto':

  error=-1;
  file=FileOpenMess("test.txt"); // generates default error message
  if(file==NULL) {
error_a:
  }
  status=FileWriteMess(file,"name=" + name); // generates default error message
  if(status) {
error_b:
  }
  status=FileWriteContent(file);
  if(status) {       
    message(...);
error_c:
  }
  error=0;
  comefrom error_a;
  comefrom error_b;
  comefrom error_c;
  FileClose(file); // tolerant gegen file==NULL
  return error;

;-) -- vgl

Wenn schon, denn schon:

 
  error=-1;
  file=FileOpenMess("test.txt"); // generates default error message
error_a:
  status=FileWriteMess(file,"name=" + name); // generates default error message
error_b:
  status=FileWriteContent(file);
error_c:
  error=0;
  if (file==NULL) comefrom error_a;
  if (status) comefrom error_b;
  comefrom error_message;
  FileClose(file); // tolerant gegen file==NULL
  return error;

  if (status) comefrom error_c;
  message(...);
error_message:

Siehe auch WardsWiki:ComeFrom
StartSeite | Neues | TestSeite | ForumSeite | Teilnehmer | Kategorien | Index | Hilfe | Einstellungen | Ändern
Text dieser Seite ändern (zuletzt geändert: 30. Juli 2002 14:51 (diff))
Suchbegriff: gesucht wird
im Titel
im Text