title: Reverse iterate over a std::vector with forward iterators
body: <p>If I have a function which takes a <code>std::vector&lt;T&gt;::const_iterator</code> called begin and a <code>std::vector&lt;T&gt;::const_iterator</code> called end, is it possible for me to iterate over it in a backwards direction?</p>
  
  <p><strong>UPDATE</strong></p>
  
  <p>I can't change the function signature, which is like this:</p>
  
  <pre><code>void func(Foo::const_iterator begin, Foo::const_iterator end) 
  {
     ...
  }
  </code></pre>
  
  <p>and called with:</p>
  
  <pre><code>func(foo.begin(), foo.end());
  </code></pre>
  
  <p>which I also can't change</p>