Symbian Developer Library

SYMBIAN OS V6.1 EDITION FOR C++

[Index] [Glossary] [Previous] [Next]



Location: e32base.h
Link against: euser.lib

Class TSwap

TSwap

Support

Supported from 5.0

Description

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.

Defined in TSwap:
Swap(), TSwap()


Construction


TSwap()

TSwap();

Description

Default constructor.

The constructor has an empty implementation.

[Top]


Swap array elements


Swap()

virtual void Swap(TInt aLeft,TInt aRight) const;

Description

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.

Parameters

TInt aLeft

The index of an array element participating in the swap

TInt aRight

The index of an array element participating in the swap

See also: