Files
boost_fusion/doc/html/fusion/iterator/functions/advance.html
2009-09-25 00:21:53 +00:00

162 lines
10 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>advance</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<link rel="home" href="../../../index.html" title="Chapter 1. Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="distance.html" title="distance">
<link rel="next" href="advance_c.html" title="advance_c">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="distance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance_c.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="advance">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.iterator.functions.advance"></a><a class="link" href="advance.html" title="advance">advance</a>
</h4></div></div></div>
<a name="fusion.iterator.functions.advance.description"></a><h6>
<a name="id578756"></a>
<a class="link" href="advance.html#fusion.iterator.functions.advance.description">Description</a>
</h6>
<p>
Moves an iterator by a specified distance.
</p>
<a name="fusion.iterator.functions.advance.synopsis"></a><h6>
<a name="id578774"></a>
<a class="link" href="advance.html#fusion.iterator.functions.advance.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">M</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/advance.html" title="advance"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">advance</span></code></a><span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">advance</span><span class="special">(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
</pre>
<div class="table">
<a name="id578896"></a><p class="title"><b>Table 1.6. Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Parameter
</p>
</th>
<th>
<p>
Requirement
</p>
</th>
<th>
<p>
Description
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">i</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../concepts/forward_iterator.html" title="Forward Iterator">Forward
Iterator</a>
</p>
</td>
<td>
<p>
Iterator to move relative to
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">N</span></code>
</p>
</td>
<td>
<p>
An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>
</p>
</td>
<td>
<p>
Number of positions to move
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<br class="table-break"><a name="fusion.iterator.functions.advance.expression_semantics"></a><h6>
<a name="id579015"></a>
<a class="link" href="advance.html#fusion.iterator.functions.advance.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><a class="link" href="advance.html" title="advance"><code class="computeroutput"><span class="identifier">advance</span></code></a><span class="special">&lt;</span><span class="identifier">M</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: A model of the same iterator
concept as <code class="computeroutput"><span class="identifier">i</span></code>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns an iterator to the
element <code class="computeroutput"><span class="identifier">M</span></code> positions from
<code class="computeroutput"><span class="identifier">i</span></code>. If <code class="computeroutput"><span class="identifier">i</span></code>
is a <a class="link" href="../concepts/bidirectional_iterator.html" title="Bidirectional Iterator">Bidirectional
Iterator</a> then <code class="computeroutput"><span class="identifier">M</span></code>
may be negative.
</p>
<a name="fusion.iterator.functions.advance.header"></a><h6>
<a name="id579117"></a>
<a class="link" href="advance.html#fusion.iterator.functions.advance.header">Header</a>
</h6>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">iterator</span><span class="special">/</span><span class="identifier">advance</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">advance</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.iterator.functions.advance.example"></a><h6>
<a name="id579225"></a>
<a class="link" href="advance.html#fusion.iterator.functions.advance.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><a class="link" href="deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a><span class="special">(</span><a class="link" href="advance.html" title="advance"><code class="computeroutput"><span class="identifier">advance</span></code></a><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="number">2</span><span class="special">&gt;</span> <span class="special">&gt;(</span><a class="link" href="../../sequence/intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
Schwinger<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="distance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance_c.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>