Use predicate in std::remove_if : remove_if « STL Algorithms Modifying sequence operations « C++ Tutorial

Home
C++ Tutorial
1.Language Basics
2.Data Types
3.Operators statements
4.Array
5.Development
6.Exceptions
7.Function
8.Structure
9.Class
10.Operator Overloading
11.Pointer
12.File Stream
13.template
14.STL Introduction
15.string
16.vector
17.list
18.bitset
19.set multiset
20.valarray
21.queue stack
22.deque
23.map multimap
24.STL Algorithms Modifying sequence operations
25.STL Algorithms Non modifying sequence operations
26.STL Algorithms Binary search
27.STL Algorithms Sorting
28.STL Algorithms Merge
29.STL Algorithms Min Max
30.STL Algorithms Iterator
31.STL Algorithms Heap
32.STL Algorithms Helper
C / ANSI-C
C Tutorial
C++
Visual C++ .NET
C++ Tutorial » STL Algorithms Modifying sequence operations » remove_if 
24.11.1.Use predicate in std::remove_if
#include <iostream>
using std::cout;
using std::endl;

#include <algorithm>
#include <vector>
#include <iterator>

bool greater9int );

int main()
{
   int a10 1021041661481210 };

   std::ostream_iterator< int > outputcout, " " );

   std::vector< int > v3a, a + 10 )// copy of a
   cout << "Vector v3 before removing all elements"
        << "\ngreater than 9:\n   ";
   std::copyv3.begin(), v3.end(), output );

   // remove elements greater than 9 from v3
   std::vector< int >::iterator newLastElement = std::remove_ifv3.begin(), v3.end(), greater9 );
   cout << "\nVector v3 after removing all elements"
      << "\ngreater than 9:\n   ";
   std::copyv3.begin(), newLastElement, output );

   return 0;
}

bool greater9int )
{
   return x > 9;
}
Vector v3 before removing all elements
greater than 9:
   10 2 10 4 16 6 14 8 12 10
Vector v3 after removing all elements
greater than 9:
   2 4 6 8
24.11.remove_if
24.11.1.Use predicate in std::remove_if
24.11.2.remove_if for list
24.11.3.removeif, bind2nd() and list
24.11.4.Use remove_if() to remove all elements from list that are greater than 10.
24.11.5.Remove all odd numbers from the vector using remove_if
24.11.6.Remove value from vector with condition with remove_if()
24.11.7.Copy elements from vector to another vector, removing elements greater than 9 (remove_copy_if)
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.