|
|
Basic types | |||||||||||||||||||||
Fixed width integer types(C++11) | |||||||||||||||||||||
Fixed width floating-point types(C++23) | |||||||||||||||||||||
| |||||||||||||||||||||
Numeric limits | |||||||||||||||||||||
C numeric limits interface | |||||||||||||||||||||
Runtime type information | |||||||||||||||||||||
|
Static constants | ||||
numeric_limits::is_integer | ||||
(C++11) | ||||
Static member functions | ||||
(C++11) | ||||
Helper types | ||||
staticconstbool is_integer; | (until C++11) | |
staticconstexprbool is_integer; | (since C++11) | |
The value ofstd::numeric_limits<T>::is_integer istrue for all integer arithmetic typesT
andfalse otherwise. This constant is meaningful for all specializations.
T | value ofstd::numeric_limits<T>::is_integer |
/* non-specialized */ | false |
bool | true |
char | true |
signedchar | true |
unsignedchar | true |
wchar_t | true |
char8_t(since C++20) | true |
char16_t(since C++11) | true |
char32_t(since C++11) | true |
short | true |
unsignedshort | true |
int | true |
unsignedint | true |
long | true |
unsignedlong | true |
longlong(since C++11) | true |
unsignedlonglong(since C++11) | true |
float | false |
double | false |
longdouble | false |
#include <cstddef>#include <cstdint>#include <limits> static_assert(std::numeric_limits<bool>::is_integer&&std::numeric_limits<std::size_t>::is_integer&&std::numeric_limits<std::int32_t>::is_integer&&std::numeric_limits<std::int64_t>::is_integer&&std::numeric_limits<decltype(42)>::is_integer&&!std::numeric_limits<int*>::is_integer&&!std::numeric_limits<float>::is_integer&&!std::numeric_limits<double>::is_integer&&!std::numeric_limits<longdouble>::is_integer&&!std::numeric_limits<decltype([](){})>::is_integer// P0315R4); int main(){}
(C++11) | checks if a type is an integral type (class template)[edit] |
[static] | identifies signed types (public static member constant)[edit] |
[static] | identifies exact types (public static member constant)[edit] |
[static] | identifies types that represent a finite set of values (public static member constant)[edit] |