Remove all instances of '0' : remove « STL Algorithms Modifying sequence operations « C++






Remove all instances of '0'

  
#include <algorithm>
#include <vector>
#include <list>
#include <iostream>

using namespace std;

int main (){
    list <int> l;

    for (int nCount = 0; nCount < 10; ++ nCount)
        l.push_back (nCount);

    list <int>::const_iterator li;
    for ( li = l.begin (); li != l.end (); ++ li )
        cout << *li << ' ';

    vector <int> v (l.size () * 2);
    vector <int>::iterator iLastPos;
    iLastPos = copy ( l.begin (), l.end (), v.begin () );

    vector <int>::iterator i;
    i = remove (v.begin (), v.end (), 0);

    // Use this new 'end position' to resize vector
    v.erase (i, v.end ());

    return 0;
}
  
    
  








Related examples in the same category

1.Use the generic remove algorithm
2.Use std::remove to delete all element in a vector by value
3.Remove an element and then erase that element
4.Combine remove and erase together
5.Remove copy Elements if They Meet a Criterion
6.remove empty string