![]() |
Delphi-Version: 2009
ifthen: Was ist da falsch?
In der Zeile
Delphi-Quellcode:
kommt die Fehlermeldung:
result := ifthen(empty<>'',2,ord(warn<>''))
Zitat:
|
AW: ifthen: Was ist da falsch?
Hilfe lesen:
Delphi-Quellcode:
function IfThen(AValue: Boolean; const ATrue: string; AFalse: string = ''): string;
Dein zweiter Parameter ist z.B. eine 2, das ist ja dann wohl kein String. EDIT: Die o.g. function ist aus StrUtils, du willst wahrscheinlich die aus der Unit MATH, ggf. musst die diese explizit angeben, wenn du beide Units in der Uses-Liste hast (math.ifthen(...)). |
AW: ifthen: Was ist da falsch?
Also bei mir geht es (DXE4). Wo ist denn die Funktion deklariert? Normal in Math
|
AW: ifthen: Was ist da falsch?
Zitat:
Delphi-Quellcode:
function IfThen(AValue: Boolean; const ATrue: Integer; const AFalse: Integer): Integer;
function IfThen(AValue: Boolean; const ATrue: Int64; const AFalse: Int64): Int64; function IfThen(AValue: Boolean; const ATrue: UInt64; const AFalse: UInt64): UInt64; function IfThen(AValue: Boolean; const ATrue: Single; const AFalse: Single): Single; function IfThen(AValue: Boolean; const ATrue: Double; const AFalse: Double): Double; function IfThen(AValue: Boolean; const ATrue: Extended; const AFalse: Extended): Extended; |
AW: ifthen: Was ist da falsch?
Siehe Edit.
|
AW: ifthen: Was ist da falsch?
Lass Dir mal das Ergebnis von ord( warn <> '') anzeigen.
|
AW: ifthen: Was ist da falsch?
Zitat:
In dieser einen Unit hatte ich vergessen, Math in die uses Klausel aufzunehmen, deshalb kannte er nur die Prozedur aus den strUtils. Ich wollte meinen Code etwas kompakter machen, überall sonst im Programm hat es funktioniert (in den anderen Units war Math schon eingebunden, und in dieser habe ich sonst nur das ifthen aus den StrUtils gebraucht) |
AW: ifthen: Was ist da falsch?
In dem Fall hilft immer folgender Trick:
Delphi-Quellcode:
und schon sieht man, welche Argumente und welche Varianten möglich sind.
IfThen( {hier den Cursor hin und UMSCH-STRG-LEER drücken} True, 0, 42 );
Und wenn das was erwartet wird nicht gesehen wird, dann fehlt wolhl eine Unit ... So ganz nebenbei sollte man UMSCH-STRG-LEER mal wesentlich häufiger und an allen möglichen Stellen im IDE-Editor benutzen und sich wundern, wo dieser Shortcut denn funktioniert und welche wundersamen Hilfen dieser bereitstellen kann. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:47 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