summaryrefslogtreecommitdiffstats
path: root/doc/html/qvaluelistiterator.html
blob: 3572b4b6fc01d02924f4ab1f189bbc2cabc0762a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
<!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/qvaluelist.doc:834 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>QValueListIterator 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&nbsp;Classes</font></a>
 | <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
 | <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
 | <a href="groups.html">
<font color="#004faf">Grouped&nbsp;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>QValueListIterator Class Reference</h1>

<p>The QValueListIterator class provides an iterator for QValueList.
<a href="#details">More...</a>
<p>All the functions in this class are <a href="threads.html#reentrant">reentrant</a> when Qt is built with thread support.</p>
<p><tt>#include &lt;<a href="qvaluelist-h.html">qvaluelist.h</a>&gt;</tt>
<p><a href="qvaluelistiterator-members.html">List of all member functions.</a>
<h2>Public Members</h2>
<ul>
<li class=fn>typedef T&nbsp;<a href="#value_type"><b>value_type</b></a></li>
<li class=fn>typedef T&nbsp;*&nbsp;<a href="#pointer"><b>pointer</b></a></li>
<li class=fn>typedef T&nbsp;&amp;&nbsp;<a href="#reference"><b>reference</b></a></li>
<li class=fn><a href="#QValueListIterator"><b>QValueListIterator</b></a> ()</li>
<li class=fn><a href="#QValueListIterator-3"><b>QValueListIterator</b></a> ( const&nbsp;QValueListIterator&lt;T&gt;&nbsp;&amp;&nbsp;it )</li>
<li class=fn>bool <a href="#operator-eq-eq"><b>operator==</b></a> ( const&nbsp;QValueListIterator&lt;T&gt;&nbsp;&amp;&nbsp;it ) const</li>
<li class=fn>bool <a href="#operator!-eq"><b>operator!=</b></a> ( const&nbsp;QValueListIterator&lt;T&gt;&nbsp;&amp;&nbsp;it ) const</li>
<li class=fn>const T &amp; <a href="#operator*-2"><b>operator*</b></a> () const</li>
<li class=fn>T &amp; <a href="#operator*"><b>operator*</b></a> ()</li>
<li class=fn>QValueListIterator&lt;T&gt; &amp; <a href="#operator++"><b>operator++</b></a> ()</li>
<li class=fn>QValueListIterator&lt;T&gt; <a href="#operator++-2"><b>operator++</b></a> ( int )</li>
<li class=fn>QValueListIterator&lt;T&gt; &amp; <a href="#operator--"><b>operator--</b></a> ()</li>
<li class=fn>QValueListIterator&lt;T&gt; <a href="#operator---2"><b>operator--</b></a> ( int )</li>
<li class=fn>QValueListIterator&lt;T&gt; &amp; <a href="#operator+-eq"><b>operator+=</b></a> ( int&nbsp;j )</li>
<li class=fn>QValueListIterator&lt;T&gt; &amp; <a href="#operator--eq"><b>operator-=</b></a> ( int&nbsp;j )</li>
</ul>
<hr><a name="details"></a><h2>Detailed Description</h2>


The QValueListIterator class provides an iterator for <a href="qvaluelist.html">QValueList</a>.
<p> 


<p> 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.
<p> The QValueListIterator class is an iterator for QValueList
instantiations. You can create the appropriate iterator type by
using the <tt>iterator</tt> typedef provided by QValueList.
<p> The only way to access the items in a QValueList is to use an
iterator.
<p> Example (see QValueList for the complete code):
<pre>
    EmployeeList::iterator it;
    for ( it = list.begin(); it != list.end(); ++it )
        cout &lt;&lt; (*it).surname().latin1() &lt;&lt; ", " &lt;&lt;
                (*it).forename().latin1() &lt;&lt; " earns " &lt;&lt;
                (*it).salary() &lt;&lt; endl;

    // Output:
    // Doe, John earns 50000
    // Williams, Jane earns 80000
    // Hawthorne, Mary earns 90000
    // Jones, Tom earns 60000
    </pre>
 
<p> <a href="qvaluelist.html">QValueList</a> is highly optimized for performance and memory usage.
This means that you must be careful: QValueList 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 <a href="qtl.html">QTL</a>.
<p> Using an invalid iterator is undefined (your application will
probably crash). Many Qt functions return const value lists; to
iterate over these you should make a copy and iterate over the
copy.
<p> For every Iterator there is a ConstIterator. When accessing a
QValueList 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.
<p> <p>See also <a href="qvaluelist.html">QValueList</a>, <a href="qvaluelistconstiterator.html">QValueListConstIterator</a>, <a href="qtl.html">Qt Template Library Classes</a>, and <a href="tools.html">Non-GUI Classes</a>.

<hr><h2>Member Type Documentation</h2>
<h3 class=fn><a name="pointer"></a>QValueListIterator::pointer</h3> 
Pointer to value_type. 
<h3 class=fn><a name="reference"></a>QValueListIterator::reference</h3> 
Reference to value_type. 
<h3 class=fn><a name="value_type"></a>QValueListIterator::value_type</h3> 
The type of value, T. 
<hr><h2>Member Function Documentation</h2>
<h3 class=fn><a name="QValueListIterator"></a>QValueListIterator::QValueListIterator ()
</h3>

<p> Creates un uninitialized iterator.

<h3 class=fn><a name="QValueListIterator-3"></a>QValueListIterator::QValueListIterator ( const&nbsp;<a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt;&nbsp;&amp;&nbsp;it )
</h3>

<p> This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
<p> Constructs a copy of the iterator <em>it</em>.

<h3 class=fn>bool <a name="operator!-eq"></a>QValueListIterator::operator!= ( const&nbsp;<a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt;&nbsp;&amp;&nbsp;it ) const
</h3>

<p> Compares this iterator and <em>it</em> and returns TRUE if they point to
different items; otherwise returns FALSE.

<h3 class=fn>T &amp; <a name="operator*"></a>QValueListIterator::operator* ()
</h3>

<p> Asterisk operator. Returns a reference to the current iterator item.

<h3 class=fn>const T &amp; <a name="operator*-2"></a>QValueListIterator::operator* () const
</h3>

<p> This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
<p> Asterisk operator. Returns a reference to the current iterator item.

<h3 class=fn><a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt;&nbsp;&amp; <a name="operator++"></a>QValueListIterator::operator++ ()
</h3>

<p> 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.

<h3 class=fn><a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt; <a name="operator++-2"></a>QValueListIterator::operator++ ( int )
</h3>

<p> This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
<p> 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.

<h3 class=fn><a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt;&nbsp;&amp; <a name="operator+-eq"></a>QValueListIterator::operator+= ( int&nbsp;j )
</h3>

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

<h3 class=fn><a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt;&nbsp;&amp; <a name="operator--"></a>QValueListIterator::operator-- ()
</h3>

<p> 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.

<h3 class=fn><a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt; <a name="operator---2"></a>QValueListIterator::operator-- ( int )
</h3>

<p> This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
<p> 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.

<h3 class=fn><a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt;&nbsp;&amp; <a name="operator--eq"></a>QValueListIterator::operator-= ( int&nbsp;j )
</h3>

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

<h3 class=fn>bool <a name="operator-eq-eq"></a>QValueListIterator::operator== ( const&nbsp;<a href="qvaluelistiterator.html">QValueListIterator</a>&lt;T&gt;&nbsp;&amp;&nbsp;it ) const
</h3>

<p> Compares this iterator and <em>it</em> and returns TRUE if they point to
the same item; otherwise returns FALSE.

<!-- eof -->
<hr><p>
This file is part of the <a href="index.html">Qt toolkit</a>.
Copyright &copy; 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 &copy; 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>Qt 3.3.8</div>
</table></div></address></body>
</html>