Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Verständnisfrage Boolean <-> Zahl

  Alt 16. Dez 2013, 17:49
Ich weiß nicht, ob man noch alte Steintafeln ausgräbt auf denen das schon so geregelt war, aber ich kenne Boolean als Ganzzahl immer mit 0 für False und 1 für True .

Auch Delphis Boolean.ToInteger() gibt 0 oder 1 aus. Warum in aller Welt gibt BoolToStr(..) eigentlich '0' und '-1' aus? Weder ist das konsistent, noch kann ich mir irgendeinen Grund denken.

Delphi-Quellcode:
function BoolToStr(B: Boolean; UseBoolStrs: Boolean = False): string;
const
  cSimpleBoolStrs: array [boolean] of String = ('0', '-1');
begin
  if UseBoolStrs then
  begin
    VerifyBoolStrArray;
    if B then
      Result := TrueBoolStrs[0]
    else
      Result := FalseBoolStrs[0];
  end
  else
    Result := cSimpleBoolStrs[B];
end;
  Mit Zitat antworten Zitat