fork download
  1. #include <iostream>
  2.  
  3. template <typename T1>
  4. inline bool test(T1 x, T1 s, T1 e)
  5. {
  6. std::cout << "generic" << std::endl;
  7. return (s <= x && x <= e);
  8. }
  9.  
  10. template <typename T1, typename T2>
  11. inline bool test(T1 x, T1 s, T2 e)
  12. {
  13. std::cout << "different T2" << std::endl;
  14. return (s <= x && x <= e);
  15. }
  16.  
  17. template <typename T1, typename T2, typename T3>
  18. inline bool test(T1 x, T2 s, T3 e)
  19. {
  20. std::cout << "different T3" << std::endl;
  21. return (s <= x && x <= e);
  22. }
  23.  
  24. int main(void)
  25. {
  26. test(1, 2, 3);
  27. test(1, 2, 3.);
  28. test(1, 2L, 3.);
  29. }
Success #stdin #stdout 0.02s 2724KB
stdin
Standard input is empty
stdout
generic
different T2
different T3