basic_ios::exceptions
指示哪些异常将由流引发。
iostate exceptions( ) const;
void exceptions(
iostate _Newexcept
);
void exceptions(
io_state _Newexcept
);
参数
- _Newexcept
标志要引发异常。
返回值
当前指定流引发的异常的标志。
备注
第一个成员函数返回存储的异常掩码。 第二个成员函数在异常掩码存储 _Except 并返回其以前存储的值。 请注意存储新异常掩码,可以引发异常,如调用 清除( rdstate )。
示例
// basic_ios_exceptions.cpp
// compile with: /EHsc /GR
#include <iostream>
int main( )
{
using namespace std;
cout << cout.exceptions( ) << endl;
cout.exceptions( ios::eofbit );
cout << cout.exceptions( ) << endl;
try
{
cout.clear( ios::eofbit ); // Force eofbit on
}
catch ( exception &e )
{
cout.clear( );
cout << "Caught the exception." << endl;
cout << "Exception class: " << typeid(e).name() << endl;
cout << "Exception description: " << e.what() << endl;
}
}
要求
标头: <ios>
命名空间: std