You can use std::is_same<T,U>::value
from C++11 onwards.
Here, T
, and U
are the types, and value
will be true
if they are equivalent, and false
if they are not.
Note that this is evaluated at compile time.
See http://en.cppreference.com/w/cpp/types/is_same