How to check if types are equal in C++11?
std::uint32_t == unsigned; //#1
And another snippet
template<typename T> struct A{ string s = T==unsigned ? "unsigned" : "other"; }
You can use std::is_same<T,U>::value from C++11 onwards.
std::is_same<T,U>::value
Here, T, and U are the types, and value will be true if they are equivalent, and false if they are not.
T
U
value
true
false
Note that this is evaluated at compile time.
See http://en.cppreference.com/w/cpp/types/is_same
1.4m articles
1.4m replys
5 comments
57.0k users