Die Basis ist aber immer TryStrToInt
Ich dachte val. Habe das auch genommen, weil es kein StrToUInt gibt.
Jupp, da wird als Basis die System-Funktion
System.Val benutzt.
Der Code-Wert wird aber dort nur auf
= 0
oder
<> 0
ausgewertet, so dass man diese Teile auch problemlos so hätte deklarieren können:
Delphi-Quellcode:
function TryStrToInt( const S: string; out Value: Integer ) : Boolean;
var
E: Integer;
begin
Val(S, Value, E);
Result := E = 0;
end;
function StrToInt(const S: string): Integer;
begin
if not TryStrToInt(S, Result) then ConvertErrorFmt(@System.SysConst.SInvalidInteger, [S]);
end;
function StrToIntDef(const S: string; Default: Integer): Integer;
begin
if not TryStrToInt(S, Result) then Result := Default;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)