Guest User

Untitled

a guest
Jul 20th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1. template<typename T, std::enable_if_t<std::is_same_v<int, T>, T>* = nullptr>
  2. void f() { };
  3.  
  4. template<typename T, std::enable_if_t<std::is_same_v<double, T>, T>* = nullptr>
  5. void f() { };
  6.  
  7. int main()
  8. {
  9. f<int>();
  10. f<double>();
  11. }
  12.  
  13. template<typename T, std::enable_if_t<std::is_same_v<int, T>, T>* = nullptr>
  14. struct f { };
  15.  
  16. template<typename T, std::enable_if_t<std::is_same_v<double, T>, T>* = nullptr>
  17. struct f { };
  18.  
  19. int main()
  20. {
  21. f<int>;
  22. f<double>;
  23. }
  24.  
  25. main.cpp:36:70: error: template parameter ‘std::enable_if_t<is_same_v<int, T> >* <anonymous>’
  26. template<typename T, std::enable_if_t<std::is_same_v<int, T>, T>* = nullptr>
  27. ^~~~~~~
  28.  
  29.  
  30. main.cpp:40:12: error: redeclared here as ‘std::enable_if_t<is_same_v<double, T>, T>* <anonymous>’
  31. struct f { };
  32. ^
Add Comment
Please, Sign In to add comment