Partager via


numeric_limits::is_exact

Teste si les calculs effectués sur un type sont exempts d'erreurs d'arrondi.

static const bool is_exact = false;

Valeur de retour

true si les calculs sont exempts d'erreurs d'arrondi ; false cas contraire.

Notes

Tous les types d'entiers prédéfinis ont des représentations exactes pour leurs valeurs et falsede retour.Une représentation à virgule fixe ou rationnelle est également considérée comme exacte, mais une représentation à virgule flottante n'est pas.

Exemple

// numeric_limits_is_exact.cpp
// compile with: /EHsc
#include <iostream>
#include <limits>

using namespace std;

int main( )
{
   cout << "Whether float objects have calculations "
        << "free of rounding errors: "
        << numeric_limits<float>::is_exact
        << endl;
   cout << "Whether double objects have calculations "
        << "free of rounding errors: "
        << numeric_limits<double>::is_exact
        << endl;
   cout << "Whether long int objects have calculations "
        << "free of rounding errors: "
        << numeric_limits<long int>::is_exact
        << endl;
   cout << "Whether unsigned char objects have calculations "
        << "free of rounding errors: "
        << numeric_limits<unsigned char>::is_exact
        << endl;
}
  

Configuration requise

en-tête : <limits>

l'espace de noms : DST

Voir aussi

Référence

strstreambuf Class