Talk:Array sort
From Free Pascal wiki
Jump to navigationJump to searchAvoid memory-transfer operations
I think it would be better to use user-supplied swap function instead of relying on low-level memory-transfer operations, e.g.:
interface
type
FComp = function ( var data; i, j: integer ): integer;
FSwap = procedure( var data; i, j: integer );
TSort = record
Comp: FComp;
Swap: FSwap;
end;
procedure Sort( var sort: TSort; var data; left, right: integer );