Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# TQValueListIterator Class Reference

The TQValueListIterator class provides an iterator for TQValueList. More...

All the functions in this class are reentrant when TQt is built with thread support.

`#include <ntqvaluelist.h>`

List of all member functions.

## Public Members

- typedef T value_type
- typedef T * pointer
- typedef T & reference
- TQValueListIterator ()
- TQValueListIterator ( const TQValueListIterator<T> & it )
- bool operator== ( const TQValueListIterator<T> & it ) const
- bool operator!= ( const TQValueListIterator<T> & it ) const
- const T & operator* () const
- T & operator* ()
- TQValueListIterator<T> & operator++ ()
- TQValueListIterator<T> operator++ ( int )
- TQValueListIterator<T> & operator-- ()
- TQValueListIterator<T> operator-- ( int )
- TQValueListIterator<T> & operator+= ( int j )
- TQValueListIterator<T> & operator-= ( int j )

## Detailed Description

The TQValueListIterator class provides an iterator for TQValueList.

An iterator is a class for accessing the items of a container class: a generalization of the index in an array. A pointer into a "const char *" and an index into an "int[]" are both iterators, and the general idea is to provide that functionality for any data structure.

The TQValueListIterator class is an iterator for TQValueList instantiations. You can create the appropriate iterator type by using the `iterator` typedef provided by TQValueList.

The only way to access the items in a TQValueList is to use an iterator.

Example (see TQValueList for the complete code):

        EmployeeList::iterator it;
        for ( it = list.begin(); it != list.end(); ++it )
            cout << (*it).surname().latin1() << ", " <<
                    (*it).forename().latin1() << " earns " <<
                    (*it).salary() << endl;

        // Output:
        // Doe, John earns 50000
        // Williams, Jane earns 80000
        // Hawthorne, Mary earns 90000
        // Jones, Tom earns 60000

TQValueList is highly optimized for performance and memory usage. This means that you must be careful: TQValueList does not know about all its iterators and the iterators don't know to which list they belong. This makes things very fast, but if you're not careful, you can get spectacular bugs. Always make sure iterators are valid before dereferencing them or using them as parameters to generic algorithms in the STL or the TQTL.

Using an invalid iterator is undefined (your application will probably crash). Many TQt functions return const value lists; to iterate over these you should make a copy and iterate over the copy.

For every Iterator there is a ConstIterator. When accessing a TQValueList in a const environment or if the reference or pointer to the list is itself const, then you must use the ConstIterator. Its semantics are the same as the Iterator, but it only returns const references.

See also TQValueList, TQValueListConstIterator, TQt Template Library Classes, and Non-GUI Classes.

## Member Type Documentation

### TQValueListIterator::pointer

Pointer to value_type.

### TQValueListIterator::reference

Reference to value_type.

### TQValueListIterator::value_type

The type of value, T.

## Member Function Documentation

### TQValueListIterator::TQValueListIterator ()

Creates un uninitialized iterator.

### TQValueListIterator::TQValueListIterator ( const TQValueListIterator<T> & it )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

Constructs a copy of the iterator it.

### bool TQValueListIterator::operator!= ( const TQValueListIterator<T> & it ) const

Compares this iterator and it and returns TRUE if they point to different items; otherwise returns FALSE.

### T & TQValueListIterator::operator* ()

Asterisk operator. Returns a reference to the current iterator item.

### const T & TQValueListIterator::operator* () const

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

Asterisk operator. Returns a reference to the current iterator item.

### TQValueListIterator<T> & TQValueListIterator::operator++ ()

Prefix ++ makes the succeeding item current and returns an iterator pointing to the new current item. The iterator cannot check whether it reached the end of the list. Incrementing the iterator returned by end() causes undefined results.

### TQValueListIterator<T> TQValueListIterator::operator++ ( int )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

Postfix ++ makes the succeeding item current and returns an iterator pointing to the new current item. The iterator cannot check whether it reached the end of the list. Incrementing the iterator returned by end() causes undefined results.

### TQValueListIterator<T> & TQValueListIterator::operator+= ( int j )

Postfix -- jumps j steps forward in the list. The iterator cannot check whether it reached the end of the list. Jumping past the end() causes undefined results.

### TQValueListIterator<T> & TQValueListIterator::operator-- ()

Prefix -- makes the previous item current and returns an iterator pointing to the new current item. The iterator cannot check whether it reached the beginning of the list. Decrementing the iterator returned by begin() causes undefined results.

### TQValueListIterator<T> TQValueListIterator::operator-- ( int )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

Postfix -- makes the previous item current and returns an iterator pointing to the new current item. The iterator cannot check whether it reached the beginning of the list. Decrementing the iterator returned by begin() causes undefined results.

### TQValueListIterator<T> & TQValueListIterator::operator-= ( int j )

Postfix -- jumps j steps backward in the list. The iterator cannot check whether it reached the beginning of the list. Jumping past begin() causes undefined results.

### bool TQValueListIterator::operator== ( const TQValueListIterator<T> & it ) const

Compares this iterator and it and returns TRUE if they point to the same item; otherwise returns FALSE.

This file is part of the TQt toolkit. Copyright © 1995-2007 Trolltech. All Rights Reserved.