ГМ
Size: a a a
ГМ
VA
SB
VA
где достаточно recordSB
где достаточно recordSB
record или потратить больше тактов процессора на class.AS
record или потратить больше тактов процессора на class.G
`TVader = class` и `TLuke = class(TVader)`. И для них есть TSkywalkerList = TList<T>. Можно ли ограничить лист только классами TVader и TLuke, или для них нужно создавать интерфейс?GB
W
SB
SB
W
SB
generic TDataFile<T> = class(TObject)(синтаксис FPC)
function GetByOffset(AOffset: TFileOffset; var AEntry: T): Boolean;
function GetByOffset(AOffset: TFileOffset; ACount: Integer;
var AData: array of T): Boolean; overload;
end;
TAreaDataFile = specialize TDataFile<TMapArea>;
TNodeDataFile = specialize TDataFile<TMapNode>;
TWayDataFile = specialize TDataFile<TMapWay>;
SB
SB
GB
SB
array of T в пользу класса-списка.GB
array of T в пользу класса-списка.SB