Defines the basic behaviour for swapping two elements of an array.
The class is abstract. A derived class must be defined and implemented to use the functionality.
A derived class can define how to swap two elements of an array. In practice, this means providing an implementation for the virtual function Swap().
To support this, the derived class is also likely to need a pointer to the array itself and suitable constructors and/or other member functions to set such a pointer.
Swaps two elements of an array.
This function is called by User::QuickSort().
The default implementation raises a USER 36 panic.
In general, the class must provide a way of translating the indexes representing the two elements into pointers to the elements themselves. The Mem::Swap() utility function can then be used to swap the two elements. This implies that the derived class must contain a pointer to the array itself and have access to other information about the array, such as the length of elements.
By convention, the index value is relative to zero; i.e. a zero value refers to the first element in the array.
|aLeft||The index of an array element participating in the swap|
|aRight||The index of an array element participating in the swap|