ios_base::failure
Klasa failure definiuje klasę bazową dla typów wszystkich obiektów wyrzucony jako wyjątki, przez funkcje w iostreams biblioteki, aby raportować błędy wykryte podczas strumieni buforowych.
namespace std {
class failure : public system_error {
public:
explicit failure(
const string& _Message,
const error_code& _Code = io_errc::stream
);
explicit failure(
const char* _Str,
const error_code& _Code = io_errc::stream
);
};
Uwagi
Wartość zwracana przez what() jest kopią _Message, ewentualnie powiększony o badanie oparte na _Code.Jeśli _Code nie jest określony, wartością domyślną jest make_error_code(io_errc::stream).
Przykład
// ios_base_failure.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>
int main ( )
{
using namespace std;
fstream file;
file.exceptions(ios::failbit);
try
{
file.open( "rm.txt", ios_base::in );
// Opens nonexistent file for reading
}
catch( ios_base::failure f )
{
cout << "Caught an exception: " << f.what() << endl;
}
}
Wymagania
Nagłówek:<ios>
Przestrzeń nazw: std