January 2018
Intermediate to advanced
374 pages
9h 53m
English
The STL algorithms can only modify the elements in a specified range; the elements are never added or removed from the container.
For example, std::remove() or std::unique() does not actually remove elements from a container. Rather, it rearranges the elements so that the removed elements are placed at the back. It then returns an iterator to the first element of the removed elements.
| Code example | Resulting vector |
// Example with std::removeauto vec = std::vector<int>{1,1,2,2,3,3};auto new_end = std::remove( vec.begin(), vec.end(), 2);vec.erase(new_end, vec.end()); |
![]()
|
// Example ... |