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
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- q3valuelist.qdoc -->
<title>Qt 4.8: Q3ValueListIterator Class Reference</title>
<link rel="stylesheet" type="text/css" href="style/offline.css" />
</head>
<body>
<div class="header" id="qtdocheader">
<div class="content">
<a href="index.html" class="qtref"><span>Qt Reference Documentation</span></a>
</div>
<div class="breadcrumb toolblock">
<ul>
<li class="first"><a href="index.html">Home</a></li>
<!-- Breadcrumbs go here -->
<li><a href="modules.html">Modules</a></li>
<li>Qt3SupportLight</li>
<li>Q3ValueListIterator</li>
</ul>
</div>
</div>
<div class="content mainContent">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#public-functions">Public Functions</a></li>
<li class="level1"><a href="#details">Detailed Description</a></li>
</ul>
</div>
<h1 class="title">Q3ValueListIterator Class Reference</h1>
<!-- $$$Q3ValueListIterator-brief -->
<p>The Q3ValueListIterator class provides an iterator for <a href="q3valuelist.html">Q3ValueList</a>. <a href="#details">More...</a></p>
<!-- @@@Q3ValueListIterator -->
<pre class="cpp"> <span class="preprocessor">#include <Q3ValueListIterator></span></pre><p><b>This class is part of the Qt 3 support library.</b> It is provided to keep old source code working. We strongly advise against using it in new code. See <a href="porting4.html">Porting to Qt 4</a> for more information.</p>
<p><b>Inherits: </b><a href="qlinkedlist-iterator.html">QLinkedList<T>::iterator</a>.</p>
<ul>
<li><a href="q3valuelistiterator-members.html">List of all members, including inherited members</a></li>
</ul>
<a name="public-functions"></a>
<h2>Public Functions</h2>
<table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="q3valuelistiterator.html#Q3ValueListIterator">Q3ValueListIterator</a></b> ()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="q3valuelistiterator.html#Q3ValueListIterator-2">Q3ValueListIterator</a></b> ( const Q3ValueListIterator & <i>o</i> )</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="q3valuelistiterator.html#Q3ValueListIterator-3">Q3ValueListIterator</a></b> ( const QLinkedList<T>::iterator & <i>o</i> )</td></tr>
</table>
<ul>
<li class="fn">15 public functions inherited from <a href="qlinkedlist-iterator.html#public-functions">QLinkedList::iterator</a></li>
</ul>
<a name="details"></a>
<!-- $$$Q3ValueListIterator-description -->
<div class="descr">
<h2>Detailed Description</h2>
<p>The Q3ValueListIterator class provides an iterator for <a href="q3valuelist.html">Q3ValueList</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>
<p>The Q3ValueListIterator class is an iterator for <a href="q3valuelist.html">Q3ValueList</a> instantiations. You can create the appropriate iterator type by using the <tt>iterator</tt> typedef provided by <a href="q3valuelist.html">Q3ValueList</a>.</p>
<p>The only way to access the items in a <a href="q3valuelist.html">Q3ValueList</a> is to use an iterator.</p>
<p>Example (see <a href="q3valuelist.html">Q3ValueList</a> for the complete code):</p>
<pre class="cpp"> EmployeeList<span class="operator">::</span>iterator it;
<span class="keyword">for</span> ( it <span class="operator">=</span> list<span class="operator">.</span>begin(); it <span class="operator">!</span><span class="operator">=</span> list<span class="operator">.</span>end(); <span class="operator">+</span><span class="operator">+</span>it )
cout <span class="operator"><</span><span class="operator"><</span> (<span class="operator">*</span>it)<span class="operator">.</span>surname()<span class="operator">.</span>latin1() <span class="operator"><</span><span class="operator"><</span> <span class="string">", "</span> <span class="operator"><</span><span class="operator"><</span>
(<span class="operator">*</span>it)<span class="operator">.</span>forename()<span class="operator">.</span>latin1() <span class="operator"><</span><span class="operator"><</span> <span class="string">" earns "</span> <span class="operator"><</span><span class="operator"><</span>
(<span class="operator">*</span>it)<span class="operator">.</span>salary() <span class="operator"><</span><span class="operator"><</span> endl;
<span class="comment">// Output:</span>
<span class="comment">// Doe, John earns 50000</span>
<span class="comment">// Williams, Jane earns 80000</span>
<span class="comment">// Hawthorne, Mary earns 90000</span>
<span class="comment">// Jones, Tom earns 60000</span></pre>
<p><a href="q3valuelist.html">Q3ValueList</a> is highly optimized for performance and memory usage. This means that you must be careful: <a href="q3valuelist.html">Q3ValueList</a> 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.</p>
<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>
<p>For every Iterator there is a ConstIterator. When accessing a <a href="q3valuelist.html">Q3ValueList</a> 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>
</div>
<p><b>See also </b><a href="q3valuelist.html">Q3ValueList</a> and <a href="q3valuelistconstiterator.html">Q3ValueListConstIterator</a>.</p>
<!-- @@@Q3ValueListIterator -->
<div class="func">
<h2>Member Function Documentation</h2>
<!-- $$$Q3ValueListIterator[overload1]$$$Q3ValueListIterator -->
<h3 class="fn"><a name="Q3ValueListIterator"></a>Q3ValueListIterator::<span class="name">Q3ValueListIterator</span> ()</h3>
<p>Constructs an unitialized iterator.</p>
<!-- @@@Q3ValueListIterator -->
<!-- $$$Q3ValueListIterator$$$Q3ValueListIteratorconstQ3ValueListIterator& -->
<h3 class="fn"><a name="Q3ValueListIterator-2"></a>Q3ValueListIterator::<span class="name">Q3ValueListIterator</span> ( const <span class="type">Q3ValueListIterator</span> & <i>o</i> )</h3>
<p>Constucts a copy of iterator <i>o</i>.</p>
<!-- @@@Q3ValueListIterator -->
<!-- $$$Q3ValueListIterator$$$Q3ValueListIteratorconstQLinkedList<T>::iterator& -->
<h3 class="fn"><a name="Q3ValueListIterator-3"></a>Q3ValueListIterator::<span class="name">Q3ValueListIterator</span> ( const <span class="type"><a href="qlinkedlist.html">QLinkedList</a></span><<span class="type">T</span>><span class="type">::iterator</span> & <i>o</i> )</h3>
<p>Constucts a copy of iterator <i>o</i>.</p>
<!-- @@@Q3ValueListIterator -->
</div>
<div class="ft">
<span></span>
</div>
</div>
<div class="footer">
<p>
<acronym title="Copyright">©</acronym> 2012 Nokia Corporation and/or its
subsidiaries. Documentation contributions included herein are the copyrights of
their respective owners.</p>
<br />
<p>
The documentation provided herein is licensed under the terms of the
<a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation
License version 1.3</a> as published by the Free Software Foundation.</p>
<p>
Documentation sources may be obtained from <a href="http://www.qt-project.org">
www.qt-project.org</a>.</p>
<br />
<p>
Nokia, Qt and their respective logos are trademarks of Nokia Corporation
in Finland and/or other countries worldwide. All other trademarks are property
of their respective owners. <a title="Privacy Policy"
href="http://en.gitorious.org/privacy_policy/">Privacy Policy</a></p>
</div>
</body>
</html>
|