Namespaces
Variants

std::numeric_limits<T>:: has_infinity

From cppreference.net
Utilities library
static const bool has_infinity ;
(bis C++11)
static constexpr bool has_infinity ;
(seit C++11)

Der Wert von std:: numeric_limits < T > :: has_infinity ist true für alle Typen T , die positive Unendlichkeit als einen separaten Spezialwert darstellen können. Diese Konstante ist für alle Gleitkommatypen von Bedeutung und garantiert true , wenn std:: numeric_limits < T > :: is_iec559 == true .

Standardspezialisierungen

T Wert von std:: numeric_limits < T > :: has_infinity
/* non-specialized */ false
bool false
char false
signed char false
unsigned char false
wchar_t false
char8_t (seit C++20) false
char16_t (seit C++11) false
char32_t (seit C++11) false
short false
unsigned short false
int false
unsigned int false
long false
unsigned long false
long long (seit C++11) false
unsigned long long (seit C++11) false
float üblicherweise true
double üblicherweise true
long double üblicherweise true

Beispiel

#include <iostream>
#include <limits>
int main()
{
    std::cout << std::boolalpha
              << std::numeric_limits<int>::has_infinity << '\n'
              << std::numeric_limits<long>::has_infinity << '\n'
              << std::numeric_limits<float>::has_infinity << '\n'
              << std::numeric_limits<double>::has_infinity << '\n';
}

Mögliche Ausgabe:

false
false
true
true

Siehe auch

[static]
gibt den positiven Unendlichkeitswert des gegebenen Gleitkommatyps zurück
(öffentliche statische Elementfunktion)
identifiziert Gleitkommatypen, die den speziellen Wert "ruhendes NaN" (Not-a-Number) darstellen können
(öffentliche statische Elementkonstante)
identifiziert Gleitkommatypen, die den speziellen Wert "signalisierendes NaN" (Not-a-Number) darstellen können
(öffentliche statische Elementkonstante)