How to get the first n elements of a std::map
Since there is no .resize() member function in C++ std::map I was wondering, how one can get a std::map with at most n elements. The obvious solution is to create a loop from 0 to n and use the nth iterator as the first parameter for std::erase(). I was wondering if there is any solution that does not need the loop (at least not in my user code) and is more "the STL way to go". You can use std::advance( iter, numberofsteps ) for that. Universal solution for almost any container, such as std::list, std::map, boost::multi_index. You must check the size of your map only. template<class It> It