AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

grüner Breakpoint

Ein Thema von user0815 · begonnen am 3. Jul 2013 · letzter Beitrag vom 4. Jul 2013
Antwort Antwort
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#1

AW: grüner Breakpoint

  Alt 3. Jul 2013, 18:48
Ich hatte das Problem letztens auch bei einer For-Schleife. Breakpoint gesetzt un der wurde dann beim Start grün mit der Meldung, dass die For-Schleife nicht ausgeführt wird. Frag mich nicht warum. Er hat den Teil mit der For-Schleife einfach übersprungen. Als er mal reingesprungen war, war i=4 anstatt 0 (bei einer for i := 0 to 4 do - Schleife). Ich hab Delphi geschlossen und neu geöffnet, das Projekt bereinigt und sonst alles mögliche gemacht. Hat alles nix genützt. Schlussendlich hab ich einfach eine repeat-Schleife genommen

Schau dir mal die Meldungen beim Compilieren an und poste die hier, vielleicht weiß ja jemand was damit anzufangen. Bei mir stand etwas drin. Den genauen Wortlaut weiß ich leider nicht mehr.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.689 Beiträge
 
Delphi 2007 Enterprise
 
#2

AW: grüner Breakpoint

  Alt 3. Jul 2013, 23:58
Deine 4 erklärt sich daraus, dass Delphi wenn möglich Schleifen umdreht, bei dir also zu einer for i := 4 downto 0 ... Schleife macht. IMHO wird das gemacht, weil der Vergleich auf 0 als Abbruchbedingung schneller gemacht werden kann, als auf eine andere Zahl. Und sie werden auch ganz rausoptimiert, wenn der Compiler keine Änderungen für den noch folgenden Code oder Objekte ausserhalb der Methode feststellt. (Deswegen war weiter vorne auch die Rede davon die Optimierung auszuschalten. Dann wird nix gedreht, und imho auch nichts rausgeschnitten.)

Ich habe mir angewöhnt eigentlich nie meine Breakpoints auf den Anfang (oder Ende) einer Schleife zu setzen (auch nicht auf das "begin"). Ich meine, das war ursprünglich auch, weil es mal ging, und mal wieder nicht. Statt dessen schnappe ich mir einfach eine Zeile aus dem Rumpf, oder eine davor bzw. dahinter. Kein Gehampel und Gesuche, und führt auch zum Ziel. (Wenn ich mal eine Zeile brauche, z.B. mit der Schleife endet auch die Methode, werf ich eben ein ShowMessage('bla'); da hin.)
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 14:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz