Copy from one vector to another and remove values with remove_copy() : remove_copy « STL Algorithms Modifying sequence operations « C++ Tutorial






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

using namespace std;

bool greater9( int );

int main()
{ 
   const int SIZE = 10;
   int a[ SIZE ] = { 10, 2, 10, 4, 16, 6, 14, 8, 12, 10 };

   // Remove 10 from v
   vector< int > v( a, a + SIZE );
   vector< int >::iterator newLastElement;
   newLastElement = remove( v.begin(), v.end(), 10 );

   // Copy from v2 to c, removing 10s
   vector< int > v2( a, a + SIZE );
   vector< int > c( SIZE, 0 );
   remove_copy( v2.begin(), v2.end(), c.begin(), 10 );

   return 0;
}

bool greater9( int x )
{
   return x > 9;
}








24.9.remove_copy
24.9.1.std::remove_copy
24.9.2.Use remove_copy to delete all space in a char array
24.9.3.Use remove_copy with vector
24.9.4.Use remove_copy to print elements without those having the value 3
24.9.5.Copy from one vector to another and remove values with remove_copy()