ГМ
Size: a a a
ГМ
VA
SB
VA
где достаточно record
SB
где достаточно record
SB
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