<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>find_first_of</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../non_mutating.html" title="Non-mutating algorithms">
<link rel="prev" href="find_end.html" title="find_end">
<link rel="next" href="find_if.html" title="find_if">
</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="../../../../../../../../libs/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="find_end.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../non_mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="find_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.non_mutating.find_first_of"></a><a class="link" href="find_first_of.html" title="find_first_of">
          find_first_of</a>
</h5></div></div></div>
<a name="range.reference.algorithms.non_mutating.find_first_of.prototype"></a><h6>
<a name="id828846"></a>
            <a class="link" href="find_first_of.html#range.reference.algorithms.non_mutating.find_first_of.prototype">Prototype</a>
          </h6>
<p>
            
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>

<span class="keyword">template</span><span class="special">&lt;</span>
    <span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
    <span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
    <span class="keyword">class</span> <span class="identifier">BinaryPredicate</span>
    <span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>

<span class="keyword">template</span><span class="special">&lt;</span>
    <span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
    <span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
    <span class="keyword">class</span> <span class="identifier">ForwardRange2</span>
    <span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>

<span class="keyword">template</span><span class="special">&lt;</span>
    <span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
    <span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
    <span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
    <span class="keyword">class</span> <span class="identifier">BinaryPredicate</span>
    <span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
          </p>
<a name="range.reference.algorithms.non_mutating.find_first_of.description"></a><h6>
<a name="id829496"></a>
            <a class="link" href="find_first_of.html#range.reference.algorithms.non_mutating.find_first_of.description">Description</a>
          </h6>
<p>
            The versions of <code class="computeroutput"><span class="identifier">find_first_of</span></code>
            that return an iterator, return an iterator to the first occurrence in
            <code class="computeroutput"><span class="identifier">rng1</span></code> of any of the elements
            in <code class="computeroutput"><span class="identifier">rng2</span></code>. Equality is
            determined by <code class="computeroutput"><span class="keyword">operator</span><span class="special">==</span></code>
            for non-predicate versions of <code class="computeroutput"><span class="identifier">find_first_of</span></code>,
            and by satisfying <code class="computeroutput"><span class="identifier">pred</span></code>
            in the predicate versions.
          </p>
<p>
            The versions of <code class="computeroutput"><span class="identifier">find_first_of</span></code>
            that return a <code class="computeroutput"><span class="identifier">range_return</span></code>,
            defines <code class="computeroutput"><span class="identifier">found</span></code> in the
            same manner as the returned iterator described above.
          </p>
<a name="range.reference.algorithms.non_mutating.find_first_of.definition"></a><h6>
<a name="id829631"></a>
            <a class="link" href="find_first_of.html#range.reference.algorithms.non_mutating.find_first_of.definition">Definition</a>
          </h6>
<p>
            Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_first_of</span><span class="special">.</span><span class="identifier">hpp</span></code>
          </p>
<a name="range.reference.algorithms.non_mutating.find_first_of.requirements"></a><h6>
<a name="id829704"></a>
            <a class="link" href="find_first_of.html#range.reference.algorithms.non_mutating.find_first_of.requirements">Requirements</a>
          </h6>
<p>
            <span class="bold"><strong>For the non-predicate versions:</strong></span>
          </p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
                <code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
                is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
                Pass Range</a> Concept.
              </li>
<li class="listitem">
                <code class="computeroutput"><span class="identifier">ForwardRange2</span></code> is
                a model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
                Range</a> Concept.
              </li>
<li class="listitem">
                <code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>'s
                value type is a model of the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>,
                and can be compared for equality with <code class="computeroutput"><span class="identifier">ForwardRange2</span></code>'s
                value type.
              </li>
</ul></div>
<p>
            <span class="bold"><strong>For the predicate versions:</strong></span>
          </p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
                <code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
                is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
                Pass Range</a> Concept.
              </li>
<li class="listitem">
                <code class="computeroutput"><span class="identifier">ForwardRange2</span></code> is
                a model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
                Range</a> Concept.
              </li>
<li class="listitem">
                <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
                a model of the <code class="computeroutput"><span class="identifier">BinaryPredicateConcept</span></code>.
              </li>
<li class="listitem">
                <code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>'s
                value type is convertible to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
                first argument type.
              </li>
<li class="listitem">
                <code class="computeroutput"><span class="identifier">ForwardRange2</span></code>'s value
                type is convertible to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
                second argument type.
              </li>
</ul></div>
<a name="range.reference.algorithms.non_mutating.find_first_of.complexity"></a><h6>
<a name="id829982"></a>
            <a class="link" href="find_first_of.html#range.reference.algorithms.non_mutating.find_first_of.complexity">Complexity</a>
          </h6>
<p>
            At most <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">*</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)</span></code> comparisons.
          </p>
</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 &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<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="find_end.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../non_mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="find_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
