Advertisement
Guest User

Untitled

a guest
Sep 20th, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.31 KB | None | 0 0
  1. template<typename It, typename OutIt, typename UnaryPredicate>
  2. It move_if(It begin, It end, OutIt dst, UnaryPredicate pred)
  3. {
  4. It last = end;
  5. while (begin != last) {
  6. if (pred(*begin)) {
  7. *dst++ = std::move(*begin);
  8. std::swap(*begin, *(--last));
  9. } else {
  10. ++begin;
  11. }
  12. }
  13. return last;
  14. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement