home | help
std::numeri...::is_integer(3)  C++ Standard Libary std::numeri...::is_integer(3)

NAME
     std::numeric_limits::is_integer - std::numeric_limits::is_integer

Synopsis
	static const bool is_integer;	   (until C++11)
	static constexpr bool is_integer;  (since C++11)

	The  value of std::numeric_limits<T>::is_integer is true for all integer
     arithmetic
	types T and false otherwise. This constant is meaningful  for  all  spe-
     cializations.

Standard specializations
	T				 value of std::numeric_limits<T>::is_in-
     teger
	/* non-specialized */		 false
	bool				 true
	char				 true
	signed char			 true
	unsigned char			 true
	wchar_t 			 true
	char8_t (since C++20)		 true
	char16_t (since C++11)		 true
	char32_t (since C++11)		 true
	short				 true
	unsigned short			 true
	int				 true
	unsigned int			 true
	long				 true
	unsigned long			 true
	long long (since C++11) 	 true
	unsigned long long (since C++11) true
	float				 false
	double				 false
	long double			 false

Example
     // Run this code

      #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<long double>::is_integer
	  && !std::numeric_limits<decltype([](){})>::is_integer // P0315R4
      );

      int main() {}

See also
	is_integral checks if a type is an integral type
	(C++11)     (class template)
	is_signed   identifies signed types
	[static]    (public static member constant)
	is_exact    identifies exact types
	[static]    (public static member constant)
	is_bounded  identifies types that represent a finite set of values
	[static]    (public static member constant)

http://cppreference.com 	   2024.06.10	   std::numeri...::is_integer(3)

home | help