You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tqt3/doc/man/man3/qmapiterator.3qt

153 lines
6.7 KiB

'\" t
.TH QMapIterator 3qt "2 February 2007" "Trolltech AS" \" -*- nroff -*-
.\" Copyright 1992-2007 Trolltech ASA. All rights reserved. See the
.\" license file included in the distribution for a complete license
.\" statement.
.\"
.ad l
.nh
.SH NAME
QMapIterator \- Iterator for QMap
.SH SYNOPSIS
\fC#include <qmap.h>\fR
.PP
.SS "Public Members"
.in +1c
.ti -1c
.BI "typedef std::bidirectional_iterator_tag \fBiterator_category\fR"
.br
.ti -1c
.BI "typedef T \fBvalue_type\fR"
.br
.ti -1c
.BI "typedef T * \fBpointer\fR"
.br
.ti -1c
.BI "typedef T & \fBreference\fR"
.br
.ti -1c
.BI "\fBQMapIterator\fR ()"
.br
.ti -1c
.BI "\fBQMapIterator\fR ( QMapNode<K, T> * p )"
.br
.ti -1c
.BI "\fBQMapIterator\fR ( const QMapIterator<K, T> & it )"
.br
.ti -1c
.BI "bool \fBoperator==\fR ( const QMapIterator<K, T> & it ) const"
.br
.ti -1c
.BI "bool \fBoperator!=\fR ( const QMapIterator<K, T> & it ) const"
.br
.ti -1c
.BI "T & \fBoperator*\fR ()"
.br
.ti -1c
.BI "const T & \fBoperator*\fR () const"
.br
.ti -1c
.BI "const K & \fBkey\fR () const"
.br
.ti -1c
.BI "T & \fBdata\fR ()"
.br
.ti -1c
.BI "const T & \fBdata\fR () const"
.br
.ti -1c
.BI "QMapIterator<K, T> & \fBoperator++\fR ()"
.br
.ti -1c
.BI "QMapIterator<K, T> \fBoperator++\fR ( int )"
.br
.ti -1c
.BI "QMapIterator<K, T> & \fBoperator--\fR ()"
.br
.ti -1c
.BI "QMapIterator<K, T> \fBoperator--\fR ( int )"
.br
.in -1c
.SH DESCRIPTION
The QMapIterator class provides an iterator for QMap.
.PP
You cannot create an iterator by yourself. Instead, you must ask a map to give you one. An iterator is as big as a pointer; on 32-bit machines that means 4 bytes, on 64-bit machines, 8 bytes. That makes copying iterators very fast. Iterators behave in a similar way to pointers, and they are almost as fast as pointers. See the QMap example.
.PP
QMap is highly optimized for performance and memory usage, but the trade-off is that you must be more careful. The only way to traverse a map is to use iterators. QMap does not know about its iterators, and the iterators don't even know to which map they belong. That makes things fast but a bit dangerous because it is up to you to make sure that the iterators you are using are still valid. QDictIterator will be able to give warnings, whereas QMapIterator may end up in an undefined state.
.PP
For every Iterator there is also a ConstIterator. You must use the ConstIterator to access a QMap in a const environment or if the reference or pointer to the map is itself const. Its semantics are the same, but it only returns const references to the item it points to.
.PP
See also QMap, QMapConstIterator, Qt Template Library Classes, and Non-GUI Classes.
.SS "Member Type Documentation"
.SH "QMapIterator::iterator_category"
The type of iterator category, \fCstd::bidirectional_iterator_tag\fR.
.SH "QMapIterator::pointer"
Pointer to value_type.
.SH "QMapIterator::reference"
Reference to value_type.
.SH "QMapIterator::value_type"
The type of value.
.SH MEMBER FUNCTION DOCUMENTATION
.SH "QMapIterator::QMapIterator ()"
Creates an uninitialized iterator.
.SH "QMapIterator::QMapIterator ( QMapNode<K, T> * p )"
Constructs an iterator starting at node \fIp\fR.
.SH "QMapIterator::QMapIterator ( const QMapIterator<K, T> & it )"
Constructs a copy of the iterator, \fIit\fR.
.SH "T & QMapIterator::data ()"
Returns a reference to the current item's data.
.SH "const T & QMapIterator::data () const"
This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
.PP
Returns a const reference to the current item's data.
.SH "const K & QMapIterator::key () const"
Returns a const reference to the current item's key.
.SH "bool QMapIterator::operator!= ( const QMapIterator<K, T> & it ) const"
Compares the iterator to the \fIit\fR iterator and returns FALSE if they point to the same item; otherwise returns TRUE.
.SH "T & QMapIterator::operator* ()"
Dereference operator. Returns a reference to the current item's data. The same as data().
.SH "const T & QMapIterator::operator* () const"
This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
.PP
Dereference operator. Returns a const reference to the current item's data. The same as data().
.SH "QMapIterator<K, T> & QMapIterator::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 map. Incrementing the iterator returned by end() causes undefined results.
.SH "QMapIterator<K, T> QMapIterator::operator++ ( int )"
This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
.PP
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 map. Incrementing the iterator returned by end() causes undefined results.
.SH "QMapIterator<K, T> & QMapIterator::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 map. Decrementing the iterator returned by begin() causes undefined results.
.SH "QMapIterator<K, T> QMapIterator::operator-- ( int )"
This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
.PP
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 map. Decrementing the iterator returned by begin() causes undefined results.
.SH "bool QMapIterator::operator== ( const QMapIterator<K, T> & it ) const"
Compares the iterator to the \fIit\fR iterator and returns TRUE if
they point to the same item; otherwise returns FALSE.
.SH "SEE ALSO"
.BR http://doc.trolltech.com/qmapiterator.html
.BR http://www.trolltech.com/faq/tech.html
.SH COPYRIGHT
Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the
license file included in the distribution for a complete license
statement.
.SH AUTHOR
Generated automatically from the source code.
.SH BUGS
If you find a bug in Qt, please report it as described in
.BR http://doc.trolltech.com/bughowto.html .
Good bug reports help us to help you. Thank you.
.P
The definitive Qt documentation is provided in HTML format; it is
located at $QTDIR/doc/html and can be read using Qt Assistant or with
a web browser. This man page is provided as a convenience for those
users who prefer man pages, although this format is not officially
supported by Trolltech.
.P
If you find errors in this manual page, please report them to
.BR qt-bugs@trolltech.com .
Please include the name of the manual page (qmapiterator.3qt) and the Qt
version (3.3.8).