fork download
  1. #include <iostream>
  2. #include <utility>
  3.  
  4. template<typename... T>
  5. struct Wrapper;
  6.  
  7. template<typename F, typename... T>
  8. struct Wrapper<F,T...>{ };
  9.  
  10.  
  11. template<typename T>
  12. struct is_wrapper : std::false_type {};
  13.  
  14. template<typename... T>
  15. struct is_wrapper<Wrapper<T...>> : std::true_type {};
  16.  
  17. //template<typename F, typename... T>
  18. //struct is_wrapper<Wrapper<F, T...>> : std::true_type {};
  19.  
  20.  
  21. using my_wrapper_type = Wrapper<int,double>;
  22.  
  23. int main()
  24. {
  25. std::cout << std::boolalpha << is_wrapper<my_wrapper_type>::value << std::endl;
  26. }
  27.  
Success #stdin #stdout 0s 3296KB
stdin
Standard input is empty
stdout
true