No find member in std::vector <p>Is there any particular reason why <code>std::vector</code> does not have a member function <code>find</code>? Instead you have to call <code>std::find</code> (and <code>#include &lt;algorithm&gt;</code>).</p> <p>The reason why I ask is that I think it would be a good thing to be able to change container class in some piece of implementation without having to change the code wherever the container is accessed. Say I replace an <code>std::vector</code> where the implementation uses <code>std::find</code> with an <code>std::map</code>. Then I also have to replace the call of <code>std::find</code> with a call to the member <code>find</code>, unless I want to keep the linear complexity of <code>std::find</code>. Why not just have a member <code>find</code> for all container classes, which finds an element with whatever algorithm is best suited for each container?</p>