ios_base::failure
A classe failure define a classe base para os tipos de todos os objetos gerados como exceções, por funções na biblioteca de iostreams , para relatar os erros detectados durante operações do buffer de fluxo.
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
);
};
Comentários
O valor retornado por what() é uma cópia de _Messagegerada, possivelmente com um teste baseado em _Code. Se _Code não for especificado, o valor padrão é make_error_code(io_errc::stream).
Exemplo
// 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;
}
}
Requisitos
ios <deCabeçalho: >
Namespace: std