std:: iostream_category
|
Défini dans l'en-tête
<ios>
|
||
|
const
std::
error_category
&
iostream_category
(
)
noexcept
;
|
(depuis C++11) | |
Obtient une référence à l'objet statique de catégorie d'erreur pour les erreurs iostream. L'objet doit redéfinir la fonction virtuelle error_category :: name ( ) pour retourner un pointeur vers la chaîne "iostream" . Il est utilisé pour identifier les codes d'erreur fournis dans les exceptions de type std::ios_base::failure .
Table des matières |
Paramètres
(aucun)
Valeur de retour
Une référence à l'objet statique de type d'exécution non spécifié, dérivé de std::error_category .
Exemple
#include <fstream> #include <iostream> int main() { std::ifstream f("doesn't exist"); try { f.exceptions(f.failbit); } catch (const std::ios_base::failure& e) { std::cout << "Caught an ios_base::failure.\n" << "Error code: " << e.code().value() << " (" << e.code().message() << ")\n" << "Error category: " << e.code().category().name() << '\n'; } }
Sortie possible :
Caught an ios_base::failure. Error code: 1 (unspecified iostream_category error) Error category: iostream
Rapports de défauts
Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.
| DR | Appliqué à | Comportement publié | Comportement corrigé |
|---|---|---|---|
| LWG 2087 | C++11 |
iostream_category
n'était pas déclaré
noexcept
|
déclaré noexcept |
Voir aussi
|
exception de flux
(classe membre publique de
std::ios_base
)
|
|
|
(C++11)
|
les codes d'erreur de flux d'E/S
(énumération) |