vlad7576

up04-3(reference_wrapper)

May 17th, 2020
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.56 KB | None | 0 0
  1. #include <vector>
  2. #include <functional>
  3.  
  4. template<typename T, typename F>
  5. void myapply(T begin, T end, F func)
  6. {
  7.     for (auto i = begin; i != end; i++) {
  8.         func(*i);
  9.     }
  10. }
  11.  
  12. template<typename T, typename F>
  13. std::vector<std::reference_wrapper<typename std::iterator_traits<T>::value_type>> myfilter2(T begin, T end, F func)
  14. {
  15.     std::vector<std::reference_wrapper<typename std::iterator_traits<T>::value_type>> tmp;
  16.     for (auto &i = begin; i != end; i++) {
  17.         if (func(*i)) {
  18.             tmp.push_back(*i);
  19.         }
  20.     }
  21.     return tmp;
  22. }
Advertisement
Add Comment
Please, Sign In to add comment