![]() |
Compiler-Hinweise deaktivieren
Hallo,
ich habe in einer Unit eine Funktion, die mir den Inhalt eines Edits auf einen Datumswert überprüft, das ganze mit try..except:
Delphi-Quellcode:
Beim Compilieren gibt Delphi dann eine Hinweismeldung aus: "Auf DummyDateTime zugewiesener Wert wird nie verwendet". Kann ich das irgendwie abstellen?
try
DummyDateTime := StrToDateTime(Edit.Text); // jetzt richtig except result := false; end; Es ist mir klar, dass es kein Fehler ist, aber es ist halt lästig. Und es soll nur für diese Unit gelten. Danke, ManuMF |
Re: Compiler-Hinweise deaktivieren
Schau mal in der Hilfe unter $WARN
|
Re: Compiler-Hinweise deaktivieren
Hallo,
danke, das probier ich mal aus. Gruß, ManuMF |
Re: Compiler-Hinweise deaktivieren
Das sind mir die liebsten Programmierer. Was kommt als nächstes: "Delphi gibt mir lauter Warnungen aus, kann ich die irgendwo per Compilerschalter abschalten?"
Und zum Schluss hat man dann ein Programm das angeblich ohne Hinweise und Warnungen kompiliert, aber nichts anderes ist, als eine tickende Zeitbome. Nur so mal nebenbei gefragt, was soll denn bitteschön an einer Stringzuweisung schief gehen (wenn nicht gerade Speichermangel herrscht, wobei dann dein except auch nicht mehr viel bringt). |
Re: Compiler-Hinweise deaktivieren
Zitat:
wer lesen kann: diese variable wird nie verwendet. also kann das ganze krams doch raus aus deinem quellcode?! :gruebel: |
Re: Compiler-Hinweise deaktivieren
Jupp, standardmäßig kann man sowas auch weglassen, dann wird intern ja auch 'ne DummyVariable verwendet.
Delphi-Quellcode:
(wobei jetzt auffällt, daß dieser Code wirklich sinnlos ist :roll: )
try
Edit.Text; except result := false; end; Also grob gesagt ... man muß das Ergebnis einer Funktion nirgends zuweisen ;) |
Re: Compiler-Hinweise deaktivieren
Hallo,
Zitat:
Zitat:
Zitat:
Ist das denn gleich ein Grund, sich so viel toller zu fühlen und das hier auch noch zum Ausdruck zu bringen :?: Ich habe hier schon Fragen gestellt, die wesentlich "blöder" waren (z.B. weil ich eine einfache Kleinigkeit vergessen habe), und die wurden weitaus freundlicher beantwortet. :arrow: :dp: Gruß, ManuMF |
Re: Compiler-Hinweise deaktivieren
die $Warn- Dinger sind ja keine globalen Optionen ... du kannst also auch vor dem Code Warn deaktivieren und danach wieder aktivieren.
Delphi-Quellcode:
{$WARN ... OFF}
... {$WARN ... ON} |
Re: Compiler-Hinweise deaktivieren
@himitsu: Das wollte ich ja.
Gruß, ManuMF |
Re: Compiler-Hinweise deaktivieren
Also ich würde es so machen:
Delphi-Quellcode:
Dann brauchst Du keine extra Variable :arrow: keine Meldung des Compilers :!:
try
StrToDateTime(Edit.Text); // jetzt richtig except result := false; end; |
Re: Compiler-Hinweise deaktivieren
Hallo,
Hatte es mit {$HINTS OFF} hinbekommen. @Martin K: Die Idee ist gut - Wieder einmal etwas, auf das ich selbst kommen müsste ;-) Gruß, ManuMF |
Re: Compiler-Hinweise deaktivieren
Zitat:
Warum also mit Zitat:
Wenn man die Variable nicht braucht, auf ihren Wert also niemals zugreift (genau das war der Hinweis des Compilers), warum soll man sie dann überhaupt deklarieren? :gruebel: :arrow: Die Variable kannst Du Dir also komplett sparen :wink: |
Re: Compiler-Hinweise deaktivieren
Es gibt doch auch eine Exceptionfreie Variante von StrToDateTime, also sowas wie TryStrToDateTime ... weiß nur nicht mehr genau wie das heißt, aber ich glaub mit Try fing es an.
Dann bräuchte man noch nichtmal 'nen Try-Except.
Delphi-Quellcode:
Result := TryStrToDateTime(Edit.Text, unmöglicherWert) <> unmöglicherWert;
ach menno ... ich meinte natürlich $HINT, statt $WARN, aber es ist doch egal, die arbeiten beide gleich und man kann das Selbe mit HINT machen ^^ |
Re: Compiler-Hinweise deaktivieren
Zitat:
Delphi-Quellcode:
Liefert True zurück, wenn die Umwandlung des Strings in TDateTime erfolgreich war, andernfalls False.
function TryStrToDateTime(const S: string; out Value: TDateTime): Boolean;
Allerdings brauch man hier auch wieder eine extra Variable für die Ausgabe... |
Re: Compiler-Hinweise deaktivieren
Zitat:
Gruß, ManuMF |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:38 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