Ergebnis 1 bis 20 von 21

Thema: Loop - wieso, weshalb, warum?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Zitat Zitat von makenshi Beitrag anzeigen
    Labels und Schleifen sind dasselbe?
    In welchem Universum gilt das denn?

    Ein Label ist eine Markierung im Code an die du mit einem Befehl springen kannst. Eine Schleife wiederholt den in ihr liegenden Code solange bis du einen Break Befehl gibst.
    Du kannst mit einem Label auch so eine Wirkung erzeugen, jedoch ist das doch nicht dasselbe.

    Forks sind zudem nichts was einfacher ist als ein Label.
    Ich frag mich überhaupt wieso du diese zwei grundverschiedenen Befehle vergleichst. Mit einer Schleife kannst du eine Codepassage wiederholen.
    Ein Fork ist nichts weiter als eine Bedingung die verhindern soll das der darin enthaltene Code ausgeführt wird wenn die Bedingung nicht erfüllt ist.

    Schmeiß doch nicht mit solchem Halbwissen um dich. Am Ende merkt sich jemand noch solchen Mist.
    Das beweist doch das labels besser sind, da man sie vielfältiger einsetzen kann...

  2. #2
    Zitat Zitat von lokipoki Beitrag anzeigen
    Das beweist doch das labels besser sind, da man sie vielfältiger einsetzen kann...
    Du kannst auch Variablen statt Switchen einsetzen und sie mit 0 und 1 belegen.
    Muss man halt schaun was sich jeweils anbietet, mir fallen durchaus ein paar Dinge ein bei denen sich loop mehr lohnt, zB. wenn man Codestrukturen kopiert, denn break ist auf den jeweiligen Loop bezogen, wären man die Labels wieder umstellen müsste.

    Naja, man kann auch goto() statt while benutzen~ Kommentare sind für Spießer und Fehler die man nicht merkt existieren nicht.

  3. #3
    Wenn man mehrere Labels in einem Event benutzt, müssen sie unterschiedliche Namen haben. Das Problem hat man bei Schleifen nicht.

  4. #4
    Ich benutze Loops für Schleifen und Labels eben für gezielte Sprünge im Code falls diese nötig sein sollten.

    Bisher waren Labels noch nicht nötig und Schleifen nur für Tastenabfragen wobei ich noch keine nennenswerten Performance Probleme hatte.

    Ich habe mal gelesen das verschachtelte Schleifen Probleme machen. Z.B.:

    Code:
    Cycle:
      Cycle:
    
      End Cycle:
    End Cycle:
    Setzt man nun dort, für die äußere Schleife, einen Break Cycle Befehl vor die innere Schleife, gibt es Probleme.

    Code:
    Cycle:
    >Break Cycle;
      Cycle:
    
      End Cycle:
    End Cycle:
    Das Problem tauchte bei einem meiner Anfängermenüs mal auf. Wenn ich mich recht entsinne springt in diesem Fall der Maker an das Ende der inneren Schleife und nicht an das der Äußeren (wozu der Break Cycle Befehl ja offensichtlich gehört).

    Bei solche nKonstrukten empfehlen sich dann Labels. Aber bei einer einfachen Tastenabfrage halte ich den Performance Unterschied nicht für sonderlich gravierend. Abgesehen davon das man so eine Abfrage als PP Event gstalten könnte womit Schleifen vollkommen wegfallen (ich weiss, ein PP Event ist eigentlich auch nur ne Schleife ^^).

  5. #5
    Zitat Zitat von lokipoki Beitrag anzeigen
    Das beweist doch das labels besser sind, da man sie vielfältiger einsetzen kann...
    Ich hab nie bestritten das Labels nützlich sind.
    Darum ging es doch absolut nicht. Es ging darum das du Elemente
    durcheinander schmeißt und gleichsetzt.

    @Kelven
    Naja, das kann man nicht wirklich als "Problem" bezeichnen.
    Das man bei solchen Sprüngen darauf aufpassen muss WOHIN
    man springt sollte schon klar sein.

    @Thema
    Meist soll halt nur ein bestimmter Codeabschnitt wiederholt werden.
    Und nicht alles. Für so etwas benutze ich sehr gerne Labels um Schleifen
    damit zu bauen. Wobei man auch sagen muss das man schon fortgeschrittene
    Sachen umsetzen muss. Sonst wird man denke ich so gut wie nie an diese
    Element rantreten müssen.

  6. #6
    @makenshi
    Es ging auch nur um Faulheit. Manchmal kann es passieren, dass man ähnliche Codeblöcke mit Labels hat und beim Kopieren vergisst die Bezeichnungen zu ändern. Unabhängig davon benutze ich eigentlich nur Labels; ich glaube in meinen ganzen Projekten hab ich nicht ein einziges Cycle.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •