Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Problem mit short if

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
20.11.2018, 10:32 Uhr
hgr



Hallo,
in einer Consolenanwendung unter Windows möchte ich die Anweisung If (longmove).. durch ein short if ersetzen (auskommentierte Zeile darüber). Normalerweise klappt das, doch in diesem Fall moniert der Compiler, VS Studio 2017, das goto als Fehler. Hat jemand einen Tip ?
Danke im Voraus.
Gruß hgr


C++:
...
bool longmove = FigOffset[fig].longmove;
    for (int i = FigOffset[fig].anfang; i <= FigOffset[fig].ende; ++i) {
      richtung = Offset[i];
      to = von;
    weitergleiten:
      to += richtung;
      if (!Brett[to]) {
        if (allezuege > 0) note_zug(von, to);
        //longmove ? goto weitergleiten : continue;
    if (longmove)
          goto weitergleiten; // Läufer, Turm und Dame
        else
          continue; // Springer und König
      }
...



------
Edit: cpp-Tags eingefügt.

Dieser Post wurde am 22.11.2018 um 21:29 Uhr von Hans editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.11.2018, 12:31 Uhr
ao

(Operator)


Im Fragezeichen-Operator können nur Ausdrücke ("expressions") verwendet werden. goto und continue sind keine Ausdrücke, sondern Schlüsselwörter.

Lies nach, was in C(++) ein Ausdruck ist und was nicht.

Und noch was: Es gibt nur wenige Situationen, wo ein "goto" wohlbegründet ist, z.B. beim Abbrechen tiefer Schachtelungen im Fehlerfall. Für Anfänger gilt: Finger weg vom goto! Es gibt immer einen anderen Weg (das ist Tatsache), und für die Aufgaben, die ihr habt, ist der der bessere!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
20.11.2018, 15:54 Uhr
hgr



Hallo ao,
danke für Deine Antwort, sie erklärt es hinreichend. Werde mich mit dem Thema Ausdruck und Schlüsselwort noch etwas beschäftigen.
Bez. "goto" bin ich Deiner Meinung, habe aber in diesem Zusammenhang noch nichts anderes gefunden.
Nochmals Danke

Gruß hgr
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
14.12.2018, 22:42 Uhr
FloSoft
Medialer Over-Flow
(Administrator)



Zitat:

Bez. "goto" bin ich Deiner Meinung, habe aber in diesem Zusammenhang noch nichts anderes gefunden.



umstrukturieren (z.b bestimmten code in eine funktion packen, dann kannst du das notfalls einfach nochmals aufrufen) dann fällt auch das goto sofort weg.

(btw im ersten Moment habe ich gedacht: Jawoll, endlich markiert ein Compiler goto als fehler ;-))
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: