Einzelnen Beitrag anzeigen

Rollo62

Registriert seit: 15. Mär 2007
4.075 Beiträge
 
Delphi 12 Athens
 
#9

AW: System.Length: Warum Integer und nicht Cardinal ?

  Alt 26. Mai 2021, 15:48
Ich verstehe Euch ja, und habe auch Integer an 1000 Stellen dafür genutzt.
Aber insbesondere bei Funktionsaufrufen würde ich mir gerne einen "Guard" ersparen,
deshalb der Cardinal

Delphi-Quellcode:
procedure CopyDing( const AArray : TBytes; const ALen : Integer )
begin
    if ALen < 0 then
        Exit; //<== DAS WÜRDE ICH SICHERHEITSHALBER EINBAUEN MÜSSEN, STATT CARDINAL ==

    Assert( ALen >= 0, 'CopyDing crash'  ); //<== ODER ARBEITET IHR MIT ASSERT ? Hilft aber nur beim Debuggen.

    if Length( AArray) >= ALen then //<== Dann gehts auch mit Integer
    begin
       ....
    end;
end;

Geändert von Rollo62 (26. Mai 2021 um 15:54 Uhr)
  Mit Zitat antworten Zitat