Use a function adaptor in vector : Vector Utility « Data Structure « C++






Use a function adaptor in vector

Use a function adaptor in vector

#include <iostream>
#include <vector>
#include <algorithm>
#include <functional>
#include <cstring>
using namespace std;

int main()
{
  vector<char *> vectorObject;
  vector<char *>::iterator p;
  int i;

  vectorObject.push_back("One");
  vectorObject.push_back("Two");
  vectorObject.push_back("Three");
  vectorObject.push_back("Four");
  vectorObject.push_back("Five");

  cout << "Sequence contains:";
  for(i = 0; i <vectorObject.size(); i++)
    cout << vectorObject[ i ] << " ";
  cout << endl;

  cout << "Searching sequence for Three.\n";

  // use a pointer-to-function adaptor
  p = find_if(vectorObject.begin(), vectorObject.end(), not1(bind2nd(ptr_fun(strcmp), "Three")));

  if(p != vectorObject.end()) {
    cout << "Found.";
    cout << "Sequence from that point is:";
    do {
      cout << *p++ << " ";
    } while (p != vectorObject.end());
  }

  return 0;
}

           
       








Related examples in the same category

1.Demonstrate inner_product() in vectorDemonstrate inner_product() in vector
2.Demonstrate partial_sum() in vectorDemonstrate partial_sum() in vector
3.set_union, set_difference, set_symmetric_difference, set_intersection
4.Use a unary function object to determine even/odd.Use a unary function object to determine even/odd.
5.Demonstrate count_if and not1 in vectorDemonstrate count_if and not1 in vector
6.Another way to sort a sequence into descending order.Another way to sort a sequence into descending order.
7.Demonstrate insert_iterator in a vectorDemonstrate insert_iterator in a vector
8.Insert one vector into another using an insert iteratorInsert one vector into another using an insert iterator
9.Demonstrate back_insert_iterator in vectorDemonstrate back_insert_iterator in vector
10.Demonstrate front_insert_iterator in vectorDemonstrate front_insert_iterator in vector
11.Find minimum and maximum inside a vectorFind minimum and maximum inside a vector
12.Use for_each() in vectorUse for_each() in vector
13.Use the logical_not unary function object in vectorUse the logical_not unary function object in vector
14.Sorting a vector into descending order in vectorSorting a vector into descending order in vector
15.Using copy() in VectorUsing copy() in Vector
16.Using swap_ranges() in VectorUsing swap_ranges() in Vector
17.Exchange elements from two different types of containers.Exchange elements from two different types of containers.
18.Demonstrate find() and find_if() in vectorDemonstrate find() and find_if() in vector
19.Demonstrate search() in vectorDemonstrate search() in vector
20.Demonstrate mismatch() in vectorDemonstrate mismatch() in vector
21.Demonstrating sort() in vectorDemonstrating sort() in vector
22.Demonstrating partial_sort() in vectorDemonstrating partial_sort() in vector
23.Demonstrate binary_search() in vectorDemonstrate binary_search() in vector
24.Demonstrate lower_bound() in vectorDemonstrate lower_bound() in vector
25.Demonstrating remove() and replace() in vectorDemonstrating remove() and replace() in vector
26.Demonstrating unique() in vectorDemonstrating unique() in vector
27.Transforming a sequence in vectorTransforming a sequence in vector
28.Generating a sequence in vectorGenerating a sequence in vector
29.Rotate a sequence in vectorRotate a sequence in vector
30.Right-rotate a sequence in vectorRight-rotate a sequence in vector
31.Demonstrate random_shuffle() in vectorDemonstrate random_shuffle() in vector
32.Merge two sequences Merge two sequences
33.A vector may allocate more memory than it currently needs. A vector may allocate more memory than it currently needs.