Outils d'utilisateurs

Outils du Site


informations_sur_les_types

Ceci est une ancienne révision du document !


Chapitre précédent Sommaire principal Chapitre suivant

Obtenir des informations sur les types et les valeurs

Adapter le type des variables utilisées permet d'optimiser la mémoire en fonction des besoins, mais cela à un impact sur les valeurs que peut prendre un type donné. Il est donc indispensable d'avoir un moyen pour obtenir des informations détaillées sur les types numériques.

Pour cela, le C++ propose un ensemble de fonctionnalités dans le fichier d'en-tête limits. Ces fonctionnalités sont un peu particulières, ce sont des classes génériques, leur syntaxes utilisent des chevrons. Une telle classe, permettant d'obtenir des informations sur un type, est appelée une classe de traits. Vous allez voir dans ce chapitre comment utiliser ce type de classes, leur création sera abordé dans la partie sur la programmation objet.

Par exemple, connaître la valeur maximale que peut prendre le type int, il faut utiliser la syntaxe suivante :

main.cpp
#include <iostream>
#include <limits>
 
int main() {
    std::cout << "Max(int) = " << std::numeric_limits<int>::max() << std::endl;
}

La classe de traits numeric_limits est une classe générique, qui prend un type en paramètre (int, entre chevrons). Et on appelle la fonction max de cette classe. Le résultat affiché sera :

Max(int) = 2147483647 ou 7fffffff

digits ? digits10 ? max_digits10 ? radix ?

  • is_signed
  • is_integer
  • is_exact
  • min
  • max
  • lowest
  • epsilon

Tester les valeurs

  • is_nan
  • is_finite
  • is_infinite

Limites des types numériques

max, min, epsilon, etc

représentation des nombres entier négatif

limitation de représentation d'un nombre “réel” par une représentation limité en mémoire

Chapitre précédent Sommaire principal Chapitre suivant
informations_sur_les_types.1402093765.txt.gz · Dernière modification: 2014/06/07 00:29 par gbdivers