To jest stara wersja strony!
remove() – usuwa z określonego zakresu elementy równe podanej wartości. Zwraca iterator do ostatniego z pozostałych elementów.
remove_if() – usuwa z określonego zakresu elementy, dla których dany predykat jest prawdziwy. Zwraca iterator do ostatniego z pozostałych elementów.
#include<algorithm>
template < class ForwardIterator, class T > ForwardIterator remove ( ForwardIterator first, ForwardIterator last, const T& value ){ ForwardIterator result = first; for ( ; first != last; ++first) if (!(*first == value)) *result++ = *first; return result; }
Iterator do ostatniego z pozostałych elementów.
Algorymt remove niczego fizycznie nie usuwa, dlatego liczebność elementów zawartych w kontenerze nigdy się nie zmienia.
Algorymt remove dokonuje przemieszczenia elementów w zadanym mu przy wywołaniu zakresie w taki sposób , by wszystkie te elementy, które nie podlegają „usunięciu”, znalazły się na początku przetwarzanego zakresu i to w takiej samej względnej kolejności. Algorytm zwraca iterator wskazujący pierwszy element za końcem przedziału zawierającego wszystkie „nieusunięte” elementy. Ta wartość jest „nowym logicznym końcem zakresu”.