AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi FOR-Schleifenvariable muss eine lokale Variable sein. Warum?
Thema durchsuchen
Ansicht
Themen-Optionen

FOR-Schleifenvariable muss eine lokale Variable sein. Warum?

Ein Thema von madbrain · begonnen am 23. Aug 2003 · letzter Beitrag vom 24. Aug 2003
 
madbrain

Registriert seit: 9. Aug 2003
Ort: an der Elbe
20 Beiträge
 
Delphi 7 Enterprise
 
#1

FOR-Schleifenvariable muss eine lokale Variable sein. Warum?

  Alt 23. Aug 2003, 17:25
Moin, moin!

Ich habe relativ viele Prozeduren / Funktionen (in einer Unit) die einen Zähler brauchen. Um Variablen zu sparen, habe ich diese Variable global deklariert.
Delphi hält davon aber nicht so viel:


FOR-Schleifenvariable muss eine einfache lokale Variable sein

Diese Fehlermeldung wird angezeigt, wenn die Steuervariable einer for-Anweisung keine einfache Variable ist (sondern beispielsweise eine Komponente eines Datensatzes), und wenn sie nicht lokal zu der Prozedur ist, die die for-Anweisung enthält.

Aus Gründen der Abwärtskompatibilität ist es zulässig, eine globale Variable als Steuervariable zu verwenden – der Compiler gibt in diesem Fall eine Warnmeldung aus. Beachten Sie, dass mit Verwendung einer lokalen Variable außerdem ein leistungsfähigerer Programmcode erzeugt wird.


Die Idee, alles möglichst lokal zu deklarieren ist ja gut, aber in diesem Fall doch eher unpraktisch !?

Warum wird dadurch "leistungsfähigerer Programmcode" erzeugt?

Thx

Madbrain
  Mit Zitat antworten Zitat
 


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 06:24 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