Классический пример фукции max() для разных типов данных
type
generic TFakeClass<_GT> = class
class function gmax(a,b: _GT):_GT;
end;
TFakeClassInt = specialize TFakeClass<integer>;
TFakeClassDouble = specialize TFakeClass<double>;
class function TFakeClass.gmax(a,b: _GT):_GT;
begin
if a > b then result := a
else result := b;
end;
BEGIN
writeln('Integer GMax:', TFakeClassInt.gmax(23,56));
writeln('Double GMax:', TFakeClassDouble.gmax(23.89,56.5));
END.
Free Pascal Справочник v0.05 © 2007-2025 Igor Salnikov aka SunDoctor