ios_base::failure
クラス failure は例外とストリームのバッファーの操作中に検出されたエラーを報告するために iostreams ライブラリの関数によって、スローされたすべてのオブジェクトの型の基本クラスを定義します。
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
);
};
解説
what() によって返される値はその _Codeに基づいてテストとともに増加する _Messageのコピーです。_Code を指定しない場合、既定は make_error_code(io_errc::stream)です。
使用例
// 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;
}
}
必要条件
ヘッダー: <ios>
名前空間: std