<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt - 3.3.8 - espenr - 2499/qt - x11 - free - 3.3.8/doc/qptrlist.doc:840 -->
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=ISO-8859-1" >
< title > TQPtrListIterator Class< / title >
< style type = "text/css" > < ! - -
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
-->< / style >
< / head >
< body >
< table border = "0" cellpadding = "0" cellspacing = "0" width = "100%" >
< tr bgcolor = "#E5E5E5" >
< td valign = center >
< a href = "index.html" >
< font color = "#004faf" > Home< / font > < / a >
| < a href = "classes.html" >
< font color = "#004faf" > All Classes< / font > < / a >
| < a href = "mainclasses.html" >
< font color = "#004faf" > Main Classes< / font > < / a >
| < a href = "annotated.html" >
< font color = "#004faf" > Annotated< / font > < / a >
| < a href = "groups.html" >
< font color = "#004faf" > Grouped Classes< / font > < / a >
| < a href = "functions.html" >
< font color = "#004faf" > Functions< / font > < / a >
< / td >
< td align = "right" valign = "center" > < img src = "logo32.png" align = "right" width = "64" height = "32" border = "0" > < / td > < / tr > < / table > < h1 align = center > TQPtrListIterator Class Reference< / h1 >
< p > The TQPtrListIterator class provides an iterator for
TQPtrList collections.
< a href = "#details" > More...< / a >
< p > < tt > #include < < a href = "qptrlist-h.html" > ntqptrlist.h< / a > > < / tt >
< p > Inherited by < a href = "qobjectlistiterator.html" > TQObjectListIterator< / a > and < a href = "qstrlistiterator.html" > TQStrListIterator< / a > .
< p > < a href = "qptrlistiterator-members.html" > List of all member functions.< / a >
< h2 > Public Members< / h2 >
< ul >
< li class = fn > < a href = "#TQPtrListIterator" > < b > TQPtrListIterator< / b > < / a > ( const TQPtrList< type> & list )< / li >
< li class = fn > < a href = "#~TQPtrListIterator" > < b > ~TQPtrListIterator< / b > < / a > ()< / li >
< li class = fn > uint < a href = "#count" > < b > count< / b > < / a > () const< / li >
< li class = fn > bool < a href = "#isEmpty" > < b > isEmpty< / b > < / a > () const< / li >
< li class = fn > bool < a href = "#atFirst" > < b > atFirst< / b > < / a > () const< / li >
< li class = fn > bool < a href = "#atLast" > < b > atLast< / b > < / a > () const< / li >
< li class = fn > type * < a href = "#toFirst" > < b > toFirst< / b > < / a > ()< / li >
< li class = fn > type * < a href = "#toLast" > < b > toLast< / b > < / a > ()< / li >
< li class = fn > < a href = "#operator-type-*" > < b > operator type *< / b > < / a > () const< / li >
< li class = fn > type * < a href = "#operator*" > < b > operator*< / b > < / a > ()< / li >
< li class = fn > type * < a href = "#current" > < b > current< / b > < / a > () const< / li >
< li class = fn > type * < a href = "#operator()" > < b > operator()< / b > < / a > ()< / li >
< li class = fn > type * < a href = "#operator++" > < b > operator++< / b > < / a > ()< / li >
< li class = fn > type * < a href = "#operator+-eq" > < b > operator+=< / b > < / a > ( uint jump )< / li >
< li class = fn > type * < a href = "#operator--" > < b > operator--< / b > < / a > ()< / li >
< li class = fn > type * < a href = "#operator--eq" > < b > operator-=< / b > < / a > ( uint jump )< / li >
< li class = fn > TQPtrListIterator< type> & < a href = "#operator-eq" > < b > operator=< / b > < / a > ( const TQPtrListIterator< type> & it )< / li >
< / ul >
< hr > < a name = "details" > < / a > < h2 > Detailed Description< / h2 >
The TQPtrListIterator class provides an iterator for
< a href = "ntqptrlist.html" > TQPtrList< / a > collections.
< p >
< p > Define a template instance TQPtrListIterator< X> to create a list
iterator that operates on TQPtrList< X> (list of X*).
< p > The following example is similar to the < a href = "ntqptrlist.html#example" > example in the TQPtrList class documentation< / a > , but it uses TQPtrListIterator. The class Employee is
defined there.
< p > < pre >
< a href = "ntqptrlist.html" > TQPtrList< / a > < Employee> list;
list.< a href = "ntqptrlist.html#append" > append< / a > ( new Employee("John", "Doe", 50000) );
list.< a href = "ntqptrlist.html#append" > append< / a > ( new Employee("Jane", "Williams", 80000) );
list.< a href = "ntqptrlist.html#append" > append< / a > ( new Employee("Tom", "Jones", 60000) );
TQPtrListIterator< Employee> it( list );
Employee *employee;
while ( (employee = it.< a href = "#current" > current< / a > ()) != 0 ) {
++it;
cout < < employee-> surname().latin1() < < ", " < <
employee-> forename().latin1() < < " earns " < <
employee-> salary() < < endl;
}
< / pre >
< p > The output is
< pre >
Doe, John earns 50000
Williams, Jane earns 80000
Jones, Tom earns 60000
< / pre >
< p > Using a list iterator is a more robust way of traversing the list
than using the < a href = "ntqptrlist.html" > TQPtrList< / a > member functions < a href = "ntqptrlist.html#first" > first< / a > (), < a href = "ntqptrlist.html#next" > next< / a > (), < a href = "ntqptrlist.html#current" > current< / a > (), etc., as many iterators can
traverse the same list independently.
< p > An iterator has its own current list item and can get the next and
previous list items. It doesn't modify the list in any way.
< p > When an item is removed from the list, all iterators that point to
that item are updated to point to < a href = "ntqptrlist.html#current" > TQPtrList::current< / a > () instead to
avoid dangling references.
< p > < p > See also < a href = "ntqptrlist.html" > TQPtrList< / a > , < a href = "collection.html" > Collection Classes< / a > , and < a href = "tools.html" > Non-GUI Classes< / a > .
< hr > < h2 > Member Function Documentation< / h2 >
< h3 class = fn > < a name = "TQPtrListIterator" > < / a > TQPtrListIterator::TQPtrListIterator ( const < a href = "ntqptrlist.html" > TQPtrList< / a > < type> & list )
< / h3 >
< p > Constructs an iterator for < em > list< / em > . The current iterator item is
set to point on the first item in the < em > list< / em > .
< h3 class = fn > < a name = "~TQPtrListIterator" > < / a > TQPtrListIterator::~TQPtrListIterator ()
< / h3 >
< p > Destroys the iterator.
< h3 class = fn > bool < a name = "atFirst" > < / a > TQPtrListIterator::atFirst () const
< / h3 >
< p > Returns TRUE if the current iterator item is the first list item;
otherwise returns FALSE.
< p > < p > See also < a href = "#toFirst" > toFirst< / a > () and < a href = "#atLast" > atLast< / a > ().
< h3 class = fn > bool < a name = "atLast" > < / a > TQPtrListIterator::atLast () const
< / h3 >
< p > Returns TRUE if the current iterator item is the last list item;
otherwise returns FALSE.
< p > < p > See also < a href = "#toLast" > toLast< / a > () and < a href = "#atFirst" > atFirst< / a > ().
< h3 class = fn > uint < a name = "count" > < / a > TQPtrListIterator::count () const
< / h3 >
< p > Returns the number of items in the list this iterator operates on.
< p > < p > See also < a href = "#isEmpty" > isEmpty< / a > ().
< p > Example: < a href = "customlayout-example.html#x1522" > customlayout/card.cpp< / a > .
< h3 class = fn > type * < a name = "current" > < / a > TQPtrListIterator::current () const
< / h3 >
< p > Returns a pointer to the current iterator item. If the iterator is
positioned before the first item in the list or after the last
item in the list, 0 is returned.
< p > Examples: < a href = "canvas-example.html#x2949" > canvas/canvas.cpp< / a > , < a href = "customlayout-example.html#x1523" > customlayout/card.cpp< / a > , and < a href = "customlayout-example.html#x1481" > customlayout/flow.cpp< / a > .
< h3 class = fn > bool < a name = "isEmpty" > < / a > TQPtrListIterator::isEmpty () const
< / h3 >
< p > Returns TRUE if the list is empty; otherwise returns FALSE.
< p > < p > See also < a href = "#count" > count< / a > ().
< h3 class = fn > < a name = "operator-type-*" > < / a > TQPtrListIterator::operator type * () const
< / h3 >
< p > Cast operator. Returns a pointer to the current iterator item.
Same as < a href = "#current" > current< / a > ().
< h3 class = fn > type * < a name = "operator()" > < / a > TQPtrListIterator::operator() ()
< / h3 >
< p > Makes the succeeding item current and returns the original current
item.
< p > If the current iterator item was the last item in the list or if
it was 0, 0 is returned.
< h3 class = fn > type * < a name = "operator*" > < / a > TQPtrListIterator::operator* ()
< / h3 >
< p > Asterisk operator. Returns a pointer to the current iterator item.
Same as < a href = "#current" > current< / a > ().
< h3 class = fn > type * < a name = "operator++" > < / a > TQPtrListIterator::operator++ ()
< / h3 >
< p > Prefix ++ makes the succeeding item current and returns the new
current item.
< p > If the current iterator item was the last item in the list or if
it was 0, 0 is returned.
< h3 class = fn > type * < a name = "operator+-eq" > < / a > TQPtrListIterator::operator+= ( uint jump )
< / h3 >
< p > Sets the current item to the item < em > jump< / em > positions after the
current item and returns a pointer to that item.
< p > If that item is beyond the last item or if the list is empty, it
sets the current item to 0 and returns 0
< h3 class = fn > type * < a name = "operator--" > < / a > TQPtrListIterator::operator-- ()
< / h3 >
< p > Prefix - makes the preceding item current and returns the new
current item.
< p > If the current iterator item was the first item in the list or if
it was 0, 0 is returned.
< h3 class = fn > type * < a name = "operator--eq" > < / a > TQPtrListIterator::operator-= ( uint jump )
< / h3 >
< p > Returns the item < em > jump< / em > positions before the current item or 0
if it is beyond the first item. Makes this the current item.
< h3 class = fn > < a href = "qptrlistiterator.html" > TQPtrListIterator< / a > < type> & < a name = "operator-eq" > < / a > TQPtrListIterator::operator= ( const < a href = "qptrlistiterator.html" > TQPtrListIterator< / a > < type> & it )
< / h3 >
< p > Assignment. Makes a copy of the iterator < em > it< / em > and returns a
reference to this iterator.
< h3 class = fn > type * < a name = "toFirst" > < / a > TQPtrListIterator::toFirst ()
< / h3 >
< p > Sets the current iterator item to point to the first list item and
returns a pointer to the item. Sets the current item to 0 and
returns 0 if the list is empty.
< p > < p > See also < a href = "#toLast" > toLast< / a > () and < a href = "#atFirst" > atFirst< / a > ().
< h3 class = fn > type * < a name = "toLast" > < / a > TQPtrListIterator::toLast ()
< / h3 >
< p > Sets the current iterator item to point to the last list item and
returns a pointer to the item. Sets the current item to 0 and
returns 0 if the list is empty.
< p > < p > See also < a href = "#toFirst" > toFirst< / a > () and < a href = "#atLast" > atLast< / a > ().
<!-- eof -->
< hr > < p >
This file is part of the < a href = "index.html" > TQt toolkit< / a > .
Copyright © 1995-2007
< a href = "http://www.trolltech.com/" > Trolltech< / a > . All Rights Reserved.< p > < address > < hr > < div align = center >
< table width = 100% cellspacing = 0 border = 0 > < tr >
< td > Copyright © 2007
< a href = "troll.html" > Trolltech< / a > < td align = center > < a href = "trademarks.html" > Trademarks< / a >
< td align = right > < div align = right > TQt 3.3.8< / div >
< / table > < / div > < / address > < / body >
< / html >