Use merge with back_inserter : merge « STL Algorithms Merge « C++ Tutorial






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

using namespace std;

int main( ) {

   vector<string> v1, v2, v3;

   v1.push_back("a");
   v1.push_back("c");
   v1.push_back("e");

   v2.push_back("b");
   v2.push_back("d");
   v2.push_back("f");

   v3.reserve(v1.size( ) + v2.size( ) + 1);

   merge(v1.begin( ), v1.end( ),
         v2.begin( ), v2.end( ),
         back_inserter<vector<string> >(v3));

   for(int i=0;i<6;i++){
      cout << v3[i];
   }

}
abcdef"








28.3.merge
28.3.1.Use std::merge to merge elements in two elements into the third one in sorted order
28.3.2.Use merge with back_inserter
28.3.3.Merge two containers
28.3.4.sum the ranges by using merge()
28.3.5.Demonstrating the generic merge algorithm with an array, a list, and a deque
28.3.6.Generic merge algorithm: merge parts of an array and a deque, putting the result into a list