Symbian
Symbian Developer Library

SYMBIAN OS V9.4

Feedback

[Index] [Previous] [Next]

#include <e32std.h>

Class TDblQueIter

class TDblQueIter : public TDblQueIterBase;

Description

A templated class that provides the behaviour for iterating through a set of doubly linked list elements.

The template parameter defines the type of element that forms the doubly linked list. The class defined in the template parameter contains the link object.

Derivation

Members

Defined in TDblQueIter:

Inherited from TDblQueIterBase:


Construction and destruction


TDblQueIter(TDblQueBase &)

inline TDblQueIter(TDblQueBase &aQue);

Description

Constructs the iterator for the specified doubly linked list

The iterator can be constructed whether or not the list contains any elements.

If the list does contain elements, the iterator pointer is set to the first one.

If the list has no elements, the iterator pointer is not set and the conversion TDblQueIter::operator T *(), the post increment TDblQueIter::operator++(TInt) and the post decrement operator --() subsequently return NULL. Once elements have been added to the list, use either the TDblQueIter::Set(T &) function, the TDblQueIterBase::SetToFirst() function or the TDblQueIterBase::SetToLast() function to set the iterator pointer.

Parameters

TDblQueBase &aQue

A reference to a doubly linked list header.

See also:

[Top]


Member functions


Set(T &)

inline void Set(T &aLink);

Description

Sets the iterator to point to a specific element in the list.

This function can be used to alter the pointer at any time during the iterator's existence. The referenced element must be in the list, otherwise the result is undefined.

Parameters

T &aLink

A reference to the element from where iteration is to continue.


operator T *()

inline operator T *();

Description

Gets a pointer to the iterator’s current element.

The operator is normally used implicitly; e.g. some member functions of the list header class TDblQue require a pointer to an element (of type class T) as a parameter but in practice, an iterator is often passed instead. This operator performs the necessary conversion.

Return value

A pointer to the current element, if the iterator points to an element in the list. NULL, if the iterator does not point to an element; i.e. the iterator pointer has previously reached the end of the list (see operator++) or the start of the list (see operator--) or the list is empty.


operator++(TInt)

inline T* operator++(TInt);

Description

Gets a pointer to the iterator's current element and then sets the iterator to point to the next element.

Repeated use of this operator allows successive elements to be accessed in the forwards direction.

Parameters

TInt

Return value

T *

A pointer to the current list element, if the iterator points to an element. NULL, if the iterator does not point to an element; i.e. the iterator pointer has reached the end of the list.


operator--(TInt)

inline T* operator--(TInt);

Description

Gets a pointer to the iterator's current element and then sets the iterator to point to the previous element.

Repeated use of this operator allows successive elements to be accessed in the backwards direction.

Parameters

TInt

Return value

T *

A pointer to the current element, if the iterator points to an element. NULL, if the iterator does not point to an element; i.e. the iterator pointer has reached the beginning of the list.