template< class T >
struct is_enum;
std::is_enum
is a UnaryTypeTrait.
Checks whether T
is an enumeration type. Provides the member constant value
which is equal to true, if T
is an enumeration type. Otherwise, value
is equal to false.
If the program adds specializations for std::is_enum
or std::is_enum_v
, the behavior is undefined.
template< class T >
constexpr bool is_enum_v = is_enum<T>::value;
T
is an enumeration type, false otherwise
#include <type_traits> struct A { enum E {}; }; static_assert(std::is_enum_v<A> == false); static_assert(std::is_enum_v<A::E> == true); enum E {}; static_assert(std::is_enum_v<E> == true); enum class Ec : int {}; static_assert(std::is_enum_v<Ec> == true); static_assert(std::is_enum_v<int> == false); int main() {}[edit] See also
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4