AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Goto

Ein Thema von MasterTobi · begonnen am 22. Aug 2007 · letzter Beitrag vom 23. Aug 2007
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#1

Goto

  Alt 22. Aug 2007, 19:44
hey ich bins ma wida

also ich möchte gern ma wissen wie die goto funktion funzt?

Delphi-Quellcode:

//bsp//

if bla bla =1 then goto 3 else 4;

3
close;

4
label1.caption:=2;
so würd ich es denken
aber irgendwie geht das net!
kann mir einer helfen?

mfg
Tobi
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Goto

  Alt 22. Aug 2007, 19:46
Vergiss goto!!!

Delphi-Quellcode:
if bla bla =1 then
begin
    ...
end
else
begin
    close;
end;
Markus Kinzler
  Mit Zitat antworten Zitat
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#3

Re: Goto

  Alt 22. Aug 2007, 19:50
ja so mach ich es ja grad zurzeit
aber ich will halt net immer wida alles nochma schreiben bzw kopieren er soll z.b halt bla bla öffters kontrollieren deswegen will ich goto

mfg
tobi
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Goto

  Alt 22. Aug 2007, 19:55
Dann lagere den Code in eine Prozedur/Funktion aus. Ein Grund warum Herr Wirth Pascal erfunden hat, war das problematische goto.

Delphi-Quellcode:
procedure DerCode;
begin
   ...
end;
if bla bla =1 then DerCode else close;
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.095 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

Re: Goto

  Alt 22. Aug 2007, 19:57
Hi,

Labels und GoTo gelten als veraltet und sollten nicht mehr verwendet werden. Für Schleifen gibt es break (zum vorzeitigen Abbbruch) und Continue (vorzeitige Fortsetzung), wofür früher goto verwendet wurde. Für deinen Fall - der kurze Text im Beispiel kann ruhig öfter geschrieben werden. Falls du längere Abschnitte hast, solltest du sie in eine eigene procedure auslagern.

Mfg
FAlter

Oh, da war wohl jemand schneller
Felix Alter
Japanurlaub 2015
  Mit Zitat antworten Zitat
Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.028 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Goto

  Alt 22. Aug 2007, 19:57
Wie schon mkinzler angedeutet hat, gehört die Goto-Anweisung (zumindest IMHO) eher zum schlechteren Programmierstil. Es gibt wesentlich kompaktere und v.a. übersichtliche Lösungen (Stichwort Switch, Case, etc.). Eventuell zeigst Du uns mal etwas mehr von Deinem Code und was genau Du lösen möchtest. Ich bin mir ganz sicher, daß wir eine passende(re) Lösung für Dich finden! Ich habe bisher auch in meinen größten Projekten (für MICH zumindest sind sie groß) noch niemals eine Goto-Anweisung benötigt und dennoch (kaum) redundanten Code benutzen müssen.

SCRaT
Michael Kübler
  Mit Zitat antworten Zitat
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#7

Re: Goto

  Alt 22. Aug 2007, 20:03
ja ich weiß ja was ihr meint
so mach ich es ja grad.

aber ich brauche unbedingt goto, ich kann bloß nicht erklären warum

mfg
tobi
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Goto

  Alt 22. Aug 2007, 20:07
[Ironie]Es ist schlecht mit dem kopf gegen eine Wand zu rennen. Ich muß es aber, kann euch aber nicht erklären warum[/Ironie]
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Goto

  Alt 22. Aug 2007, 20:12
Was willst du denn machen?
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.028 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: Goto

  Alt 22. Aug 2007, 20:12
Zitat von MasterTobi:
ja ich weiß ja was ihr meint
so mach ich es ja grad.

aber ich brauche unbedingt goto, ich kann bloß nicht erklären warum

mfg
tobi
Okay, habe gerade mal meinen Freund Google bemüht. Auch wenn auf fast allen Seiten von der Verwendung abgeraten wird, möchte ich Dir aus paswiki.de das Beispiel nicht vorenthalten - Warum habe ich das Gefühl, daß Du Dir nicht weiterhelfen lassen möchtest?!?

Delphi-Quellcode:
program labeltest;
uses crt;
label 1,2;

begin
writeln('Was kommt jetzt?');
goto 2;
1:writeln('Label1 wird nicht aufgerufen!');
2:writeln('Label2 ist sofort dran!');
readkey
end.
Viel Glück damit und hoffentlich weißt Du in 1 Jahr auch noch, wo in Deinem Programm hin- und hergesprungen wird. Ich verwette eine Kiste kaltes Bier, daß wir Dir eine vernünftigere Lösung präsentieren hätten können

Liebe Grüße,

SCRaT
Michael Kübler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz