![]() |
"Boolean-Roulette" oder "if x=true"
Hi,
Ein freund im Info-Kurs hat sich gerade eine BoolToStr-Funktion geschrieben... (Wir haben noch Delphi 4 :-/ ) das ganze sah dann in etwa so aus:
Delphi-Quellcode:
Interessanterweise kam oft 'Undefined' raus. :gruebel:
function BoolToStr(Val: Boolean): String;
begin Result:='Undefined'; //Debug if Val=True then Result:='True' else if Val=False then Result:='False'; end; Wieso ist (Val=True) False wenn Val=True ist? Will der mich verarschen? :wiejetzt: |
Re: "Boolean-Roulette" oder "if x=true"
Boolean kann auch 0 oder 1 sein, oder nicht?
Delphi-Quellcode:
Grüße
function BoolToStr(Val: Boolean): String;
begin Result:='Undefined'; //Debug if Val then Result:='True' else if not Val then Result:='False'; end; Klaus |
Re: "Boolean-Roulette" oder "if x=true"
Hi!
Ich würde einfach sagen:
Delphi-Quellcode:
nach else ist in meinen Augen keine Abfrage mehr notwendig.
function BoolToStr(Val: Boolean): String;
begin Result:='Undefined'; //Debug if Val=True then Result:='True' else Result:='False'; end; |
Re: "Boolean-Roulette" oder "if x=true"
Zitat:
Mögliche Alternativen: 'if Foo then' 'if Foo <> False then' 'if not Foo then' 'if Foo = False then' |
Re: "Boolean-Roulette" oder "if x=true"
Hi
Wie Klaus und Nico schon angedeutet haben, lasse =true generell weg. ![]() |
Re: "Boolean-Roulette" oder "if x=true"
Hallo,
das hatten wir doch schon oft. False ist Null, während alles, was nicht Null ist, als True gewertet wird. Die Konstante True aber ist Eins. Deshalb darf man zwar auf False prüfen, aber nie auf True. Stattdessen immer
Delphi-Quellcode:
also das = True weglassen.
if A then
Gruß xaromz |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:42 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