Zitat:
Delphi-Quellcode:
type
TList<T> = class(TEnumerable<T>)
...
function GetItem(Index: Integer): T; inline;
...
end;
function TList<T>.GetItem(Index: Integer): T;
begin
// CheckItemRange(Index) is expanded here manually to improve codegen
if Cardinal(Index) >= Cardinal(FCount) then
ErrorArgumentOutOfRange;
Result := List[Index];
end;
Getitem, bzw. Item kannst du im Debugger nicht benutzen, weil es Dieses "
nicht" als Funktion gibt, da durch INLINE weboptimiert.
geht nicht:
xxx[i]
oder
xxx.Item[i]
würde gehen:
xxx.List[i]
Ja, für Debugging ist dieses INLINE hier echt blöd.
Könntest also das Inline also deaktivieren, oder alternative Funktionen nutzen, welche es "gibt".
{$INLINE OFF}
, bzw. in den Projektoptionen.
https://docwiki.embarcadero.com/RADS...line_Directive