Einzelnen Beitrag anzeigen

Der schöne Günther

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

AW: Problem mit Prozedur (Integerprüfung) + Überladungen

  Alt 30. Sep 2018, 21:16
Wie würdet ihr diese Prozedur schreiben?

Ich würde die Unit System.Math für InRange(..) bzw. EnsureRange(..) verwenden


PS: Deine Fassung kompiliert nicht da du einen hart gecasteten Wert anscheinend nicht als var-Parameter übergeben kannst?

Richtig sähe es so aus

Delphi-Quellcode:
class procedure TIntUtils.CheckInteger(var IntToCheck: Integer; iDefaultValue: Int64; iMinValue: Int64; iMaxValue: Int64);
var
   asInt64: Int64;
begin
 asInt64 := Int64(IntToCheck);
 CheckInteger(asInt64, iDefaultValue, iMinValue, iMaxValue);
end;

PPS: Was macht es für einen Sinn einen Integer als Wert und einen Int64 als Default-Wert zu übergeben?

Geändert von Der schöne Günther (30. Sep 2018 um 21:20 Uhr)
  Mit Zitat antworten Zitat