fork download
  1. #include <iostream>
  2. #include <algorithm>
  3. #include <list>
  4. #include <vector>
  5. #include <deque>
  6.  
  7. template <typename T, template <typename, typename...> class Container>
  8. static bool contained(const T & x, const Container<T>& xs)
  9. {
  10. std::cout << __PRETTY_FUNCTION__ << '\n';
  11. return std::find(xs.begin(),xs.end(),x) != xs.end();
  12. }
  13.  
  14. int main()
  15. {
  16. std::list<int> lst;
  17. std::vector<double> vec;
  18. std::deque<char> deq;
  19.  
  20. contained(1, lst);
  21. contained(2.1, vec);
  22. contained('z', deq);
  23. }
Success #stdin #stdout 0s 3432KB
stdin
Standard input is empty
stdout
bool contained(const T&, const Container<T>&) [with T = int; Container = std::list]
bool contained(const T&, const Container<T>&) [with T = double; Container = std::vector]
bool contained(const T&, const Container<T>&) [with T = char; Container = std::deque]