Bibliothèque C ++ IOS - Errc

La description

Ce type de classe enum définit les conditions d'erreur de la catégorie iostream. L'énumération comprend au moins l'étiquette suivante comme indiqué -

io_errc étiquette valeur la description
courant 1 Erreur dans le flux

Toutes les implémentations de bibliothèque définissent au moins cette valeur (stream, avec une valeur de 1), mais peuvent fournir des valeurs supplémentaires, en particulier si elles nécessitent de produire des codes d'erreur supplémentaires pour la catégorie iostream.

Les valeurs du type enum io_errc peuvent être utilisées pour créer des objets error_condition à comparer avec la valeur renvoyée par le membre de code de ios_base :: failure.

Déclaration

Voici la déclaration de la fonction std :: io_errc.

enum class io_errc;;

Paramètres

aucun

Exemple

L'exemple ci-dessous explique la fonction std :: io_errc.

#include <iostream>

int main () {
   std::cin.exceptions (std::ios::failbit|std::ios::badbit);
   try {
      std::cin.rdbuf(nullptr);
   } catch (std::ios::failure& e) {
      std::cerr << "failure caught: ";
      if ( e.code() == std::make_error_condition(std::io_errc::stream) )
         std::cerr << "stream error condition\n";
      else
         std::cerr << "some other error condition\n";
   }
   return 0;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

failure caught: stream error condition