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返回的值() 是 _Message的副本,可扩展的基于 _Code的测试。 如果 _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