Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.166 Beiträge
 
Delphi 12 Athens
 
#29

AW: array[1..10] auf Wert prüfen?

  Alt 14. Aug 2018, 12:47
Was ich ja bereits gesagt hatte:
Außerhalb der Schleife ist die Schleifenvariable undefiniert, also es wird nicht "garantiert", dass sie dort einen bestimmten wert hat.

Dass sie es doch mal haben kann, ist eine andere Sache, auf die man sich aber niemals verlassen kann.
Die Variable kann/darf man außerhalb auch gern wiederverwenden, für eine andere Schleife oder für sonstwas, aber dort hat man sie natürlich vorer zu initialisieren.

Eigentlich wäre es konsequent, wenn der Compiler hier seinen "Variable wurde initialisiert"-Status nach der Schleife zurücksetzt.
Aber es ist hier das gleiche Problem wie mit nichtinitialisierten Funktions-Results, welche ebenfalls nicht "bemängelt" werden, wenn es sich um einen gemanagten Typen ala String handelt, da er ja per se initilisiert ist (außerhalb der Funktion), aber ihr dennoch keinen "definierten" Initialwert besitzt.


Für Schleifen in C++ ist das was anderes, denn dort "definierst" DU was wie mit der Variable passiert.
Code:
for (i = 0; i < 10; i++)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat