[C++] Verständnisfrage zu Switch / if

Wusst ichs doch goto ist uncool :P

OK, Passt :D
Ich habe aus einer anonymen Quelle (die ich als sicher ansehen kann) einen Tipp bekommen:
Werde den Zeichenprozess in einzelne Prozesse aufteilen, die dann von verschiedenen Methoden ausgeführt werden! das rockt!

Danke euch allen
(thy CK *gg*)

Leitman
keep geek :D

Edit:: 12:56
@ Flegmon: ne, das geht nicht, da ich mehrere Fälle habe, und es wär unmöglich, oder einfach nur unproduktiv die einzelnen Fälle so durchlaufen zu lassen!

@ GABehnke & monger: ja, ungefähr das hab ich jetzt vor, danke euch :)
 
Zuletzt bearbeitet:
Wenn es keine Umstände macht, eine eigenständige Funktion zu schreiben, funktioniert es auch so:
Code:
#include <iostream.h>

char switchit(char c);
void main(){
  char var;
  cout << "Bitte geben Sie einen Buchstaben ein: " << endl;
  cin >> var;
  cout << endl << switchit(var);
  cin >> var;
}

char switchit(char c)
{
  switch(c)
  {
    case 'a': c=switchit('b');
              break;
    case 'b': c='b';
              break;
    default:  c='x';
  }
  return c;
}

(Das letzte cin>>var ist nur als dummy da, damit das Programm nicht sofort schließt :-))

Und warum man goto nicht verwenden sollte? Wegen der Performance. Der normale Programmablauf wird dadurch unterbrochen. Schlimmer noch ist es, wenn man in einen Block mit lokalen Variablen hineinspringt, dann ist das Verhalten zudem noch Systemabhängig.
Deshalb sollte man darauf verzichten.
Geht es nicht anders, kann man goto verwenden, aber dann am Besten innerhalb eines Anweisungsblockes oder aber nur von einem Anweisungsblock herausspringen.

Fazit: In deinem Fall geht es noch, wenn du goto verwenden möchtest. Seh das aber lieber nur als "Reißleine", wenn dir die Mittel ausgehen.
 
Zuletzt bearbeitet:
Zurück