Advertisement
RobertDeMilo

YB4.9 Итераторы inserter и back inserter

Nov 11th, 2023
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.88 KB | None | 0 0
  1. #include <iostream>
  2. #include <iterator>
  3. #include <algorithm>
  4. #include <vector>
  5. #include <set>
  6. #include <map>
  7.  
  8. using namespace std;
  9.  
  10. template<typename It>
  11. void PrintRange(It range_begin, It range_end)
  12. {
  13.     for (auto it = range_begin; it != range_end; ++it)
  14.     {
  15.         cout << *it << " ";
  16.     }
  17. }
  18.  
  19. int main()
  20. {
  21.     vector <string> langs = { "Python", "C++", "C", "Java", "C#" };
  22.     vector<string> c_langs;
  23.    
  24.     auto it = copy_if(begin(langs), end(langs), back_inserter(c_langs),
  25.         [](const string& lang)
  26.         { return lang[0] == 'C'; });
  27.  
  28.     PrintRange(begin(c_langs), end(c_langs));
  29.     //////////////////////////////////////////////////////////////////////////////////////////////
  30.  
  31.     set<int> a = { 1,3,8 };
  32.     set<int> b = { 3,7,8 };
  33.     set<int> res;
  34.  
  35.     auto it2 = set_intersection(begin(a), end(a), begin(b), end(b), inserter(res, end(res)));
  36.    
  37.     PrintRange(begin(res), end(res));
  38.  
  39.     return 0;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement