Namensräume
Varianten
Aktionen

std::io_errc

Von cppreference.com
< cpp‎ | io
 
 
 
std::io_errc
 
Definiert in Header <ios>
enum class io_errc {

    stream = 1,

};
(seit C++11)

Die benannte Aufzählung std::io_errc definiert die Fehlercodes, die von I/O-Streams in std::ios_base::failure-Ausnahmeobjekten gemeldet werden. Nur ein Fehlercode (std::io_errc::stream) ist erforderlich, obwohl die Implementierung zusätzliche Fehlercodes definieren kann. Da die entsprechende Spezialisierung von std::is_error_code_enum bereitgestellt wird, sind Werte vom Typ std::io_errc implizit in std::error_code konvertierbar.

Inhalt

[edit] Member constants

Enumerationskonstante Wert
stream 1

[edit] Non-member functions

erzeugt einen I/O-Fehlercode
(Funktion) [bearbeiten]
erzeugt eine I/O-Fehlerbedingung
(Funktion) [bearbeiten]

[edit] Helper classes

erweitert den Typ-Trait std::is_error_code_enum, um iostream-Fehlercodes zu identifizieren
(class template specialization) [edit]

[edit] Example

#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";
        if (e.code() == std::io_errc::stream)
            std::cout << "The error code is std::io_errc::stream\n";
    }
}

Ausgabe

Caught an ios_base::failure.
The error code is std::io_errc::stream

[edit] See also

enthält einen plattformabhängigen Fehlercode
(Klasse) [bearbeiten]
enthält einen portablen Fehlercode
(Klasse) [bearbeiten]
Stream-Exception
(public member class of std::ios_base) [bearbeiten]