Goto sinnvoll nutzen

Für allgemeine Fragen zur Programmierung mit PureBasic.
walbus
Beiträge: 137
Registriert: 03.03.2013 20:50

Re: Goto sinnvoll nutzen

Beitrag von walbus »

:)
Zuletzt geändert von walbus am 07.02.2015 22:42, insgesamt 1-mal geändert.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Goto sinnvoll nutzen

Beitrag von NicTheQuick »

Könnt ihr bitte in dem anderen Thread weiter disuktieren und nicht in beiden parallel? Danke!
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Goto sinnvoll nutzen

Beitrag von ts-soft »

Wie wäre es, wenn wir mal langsam zum Thema zurückkehren?
Ansonsten sollte hier wohl geschlossen werden, oder ihr macht
hier weiter: http://www.purebasic.fr/german/viewtopi ... =2&t=28652

// edit: Nic war schneller :mrgreen:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Tommy
Spassvogel
Beiträge: 319
Registriert: 17.10.2013 14:36

Re: Goto sinnvoll nutzen

Beitrag von Tommy »

@walbus: Musst mich nich gleich anschnauzen und Satzzeichen sind keine Rudeltiere.
Wer laut bellt hat nicht immer recht.
Außerdem muss man sich nicht rechtfertigen.
Ich würde auch nich preisgeben was ich privat und beruflich mache.
Schalte mal bitte wieder einen Gang runter! Danke!
Und wenn du noch was zum Thema sagen möchtest dann bitte im anderen Thread.
Zuletzt geändert von Tommy am 27.01.2015 12:34, insgesamt 2-mal geändert.
PB 5.41 x64
Lord
Beiträge: 324
Registriert: 21.01.2008 19:11

Re: Goto sinnvoll nutzen

Beitrag von Lord »

Programmieren lernen mit Microsoft
Spricht das nun für oder gegen GOTO? :mrgreen:

Egal, ich finde GOTO gut und nutze es ab und zu.
Ich muß aber auch feststelle, daß ich es im Laufe der
Zeit immer seltener verwende.
Trotzdem hat es seine Berechtigung und sollte immer
Bestandteil eines BASIC sein (insbesondere PureBasic).
Bild
Benutzeravatar
Vera
Beiträge: 928
Registriert: 18.03.2009 14:47
Computerausstattung: Win XP SP2, Suse 11.1
Wohnort: Essen

Re: Goto sinnvoll nutzen

Beitrag von Vera »

Hallo,
ich bin gestern im englischen Forum auf zwei interessante Threads gestoßen, die hier verlinkt gut reinpassen:

- Gosub Return macros von idle
idle hat geschrieben:Redefined Gosub, Return, Goto macros for those that want them
your labels need to be defined with inline asm directive "!"
- Goto and Select
Mit einem Beispiel von luis, wie und wie nicht Goto mit Select verwendet werden könnte. [wenn überhaupt]

Darunter schließt sich eine Bemerkung von freak an (14.09.13)
freak hat geschrieben:Actually since the use of Goto/Gosub is something we don't want to encourage anymore, its probably best to just document it as a deprecated feature and not mention any details at all.
°
<°)))o><
~~~~~~~~~
echo "Don't worry"
echo "Keep quiet"
@echo off
format forum:\
walbus
Beiträge: 137
Registriert: 03.03.2013 20:50

Re: Goto sinnvoll nutzen

Beitrag von walbus »

Hallo Vera,
die Lösung ist hier sehr einfach.

Code: Alles auswählen

x=1

Select x 
  Case 1
    let_me_jump=1
EndSelect

If let_me_jump
  Goto here
EndIf
End

here:
Debug " i am now here"
End
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Goto sinnvoll nutzen

Beitrag von NicTheQuick »

In dem Fall macht es das aber nicht sonderlich übersichtlicher, finde ich. Andererseits, wenn das Select-Konstrukt nur groß genug ist, könnte es was helfen.
Benutzeravatar
Vera
Beiträge: 928
Registriert: 18.03.2009 14:47
Computerausstattung: Win XP SP2, Suse 11.1
Wohnort: Essen

Re: Goto sinnvoll nutzen

Beitrag von Vera »

Ja walbus,
die Möglichkeit innerhalb von Select mal eben schnell in ein anderes Select zu wechseln, hat mich auch direkt erfreut angesprungen.
Das finde ich schon sehr verlockend es mal einzusetzen :) ... danke Dir

Code: Alles auswählen

 x=1
Select x
  Case 1
    let_me_jump=1
EndSelect

If let_me_jump
  Debug "hi ~ you couldn't catch me, 'cos..."
  Goto here
EndIf
End

here:
Debug " ... i am now here"
End
°
<°)))o><
~~~~~~~~~
echo "Don't worry"
echo "Keep quiet"
@echo off
format forum:\
Benutzeravatar
Tommy
Spassvogel
Beiträge: 319
Registriert: 17.10.2013 14:36

Re: Goto sinnvoll nutzen

Beitrag von Tommy »

Ich habe mal eine komplette Window Version geschrieben.
Gadget-Code, Event-Code sind separat in Goto und kann ausgelagert werden.
Das sollte für walbus einfach verständlich sein:

Code: Alles auswählen

#CONST_OW = #PB_Window_SystemMenu | #PB_Window_ScreenCentered
OpenWindow(0, 0, 0, 250, 250, "Window", #CONST_OW)
Goto Gadgets
Loop: : Goto Event
;Kann in Datei ausgelagert werden
Event:
Event = WaitWindowEvent()
If Event = #PB_Event_Gadget
Select EventGadget()
Case 0
Debug "Klick"
EndSelect
EndIf
If Event = #PB_Event_CloseWindow
End
EndIf
Goto Loop
Gadgets:
ButtonGadget(0, 5, 5, 75, 25, "Button", 0)
Goto Loop
Zuletzt geändert von Tommy am 27.01.2015 12:31, insgesamt 2-mal geändert.
PB 5.41 x64
Antworten