Есть ли способ определить размер в байтах что-то вроде
TItem <T> = record
Data : T;
end;
Могу ли я написать что-то вроде
function TItem <T>.GetByteSize : Integer;
begin
if (T = String) then
Result := GetStringByteSize (Data as String)
else
Result := SizeOf (Data);
end;
или, возможно, с помощью специализации?
function TItem <String>.GetByteSize : Integer;
begin
Result := GetStringByteSize (Data)
end;
function TItem <T>.GetByteSize : Integer;
begin
Result := SizeOf (Data);
end;
Спасибо!