![]() |
Delphi-Version: 10.2 Tokyo
Variable wurde deklariert aber in XYZ nicht verwendet
Hallo,
mich irritiert hier ein Compilerhinweis:
Delphi-Quellcode:
Heilen kann man das ja so (ist mir klar):
procedure Produce;
var D: TDirectory; // <-- [dcc32 Hinweis] foo.pas(123): H2164 Variable 'D' wurde deklariert, aber in 'Produce' nicht verwendet S: string; begin for S in D.GetFiles(TheFolder, TheFileMask) do begin end; end;
Delphi-Quellcode:
Allerdings wüsste ich schon gerne, weshalb die obere Variante einen Hinweis bringt. Denn augenscheinlich wird "D" ja verwendet.
procedure Solve;
var S: string; begin for S in TDirectory.GetFiles(TheFolder, TheFileMask) do begin end; end; Am Rande bemerkt finde ich es erstaunlich, dass dieser Shortcut für die String-Iteration so funktioniert ohne dass sich das in einer Endlosschleife festläuft. Grüße Cody |
AW: Variable wurde deklariert aber in XYZ nicht verwendet
Es sieht nur so aus als würde D verwendet werden.
TDirectory.GetFiles ist eine Klassenmethode und benötigt keine Variable/Instanz. Und dementsprechend wird selbst bei D.GetFiles die D-Variable nicht genutzt. |
AW: Variable wurde deklariert aber in XYZ nicht verwendet
Wird nur nicht verwendet, wenn es eine statische Klassenmethode ist.
Bei einer normalen Klassenmethode würde es verwendet und als Self übergeben, bzw. genauer Self.ClassType wird übergeben, aber da müsste dann die Meldung "D wurde nicht initialisiert" erscheinen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 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