title: How to call erase with a reverse iterator
body: <p>I am trying to do something like this:</p>
  
  <pre><code>for ( std::list&lt; Cursor::Enum &gt;::reverse_iterator i = m_CursorStack.rbegin(); i != m_CursorStack.rend(); ++i )
  {
      if ( *i == pCursor )
      {
          m_CursorStack.erase( i );
          break;
      }
  }
  </code></pre>
  
  <p>However erase takes an iterator and not a reverse iterator. is there a way to convert a reverse iterator to a regular iterator or another way to remove this element from the list?</p>