std::basic_ios<CharT,Traits>::exceptions
来自cppreference.com
<tbody>
</tbody>
std::ios_base::iostate exceptions() const; |
(1) | |
void exceptions( std::ios_base::iostate except ); |
(2) | |
获取和设置流的异常掩码。异常掩码确定在哪些错误状态出现时抛出 failure 类型异常。
1) 返回异常掩码。
2) 设置异常掩码为
except。如果调用时此流具有异常掩码所覆盖的错误状态,则立即触发异常。参数
| except | - | 异常掩码 |
返回值
1) 当前异常掩码。
2) (无)
注解
| 本节未完成 原因:讨论 LWG2349 ,并从 ios_base::clear 及从有/无格式输入/输出函数要求页面的链接(或者在要求页面的上详述行为并从此处链接更好)。参阅 stackoverflow.com/a/35089910 |
示例
运行此代码
#include <fstream>
#include <iostream>
int main()
{
int ivalue;
try
{
std::ifstream in("in.txt");
in.exceptions(std::ifstream::failbit); // 可能抛出
in >> ivalue; // 可能抛出
}
catch (const std::ios_base::failure& fail)
{
// 此处处理异常
std::cout << fail.what() << '\n';
}
}
可能的输出:
basic_ios::clear: iostream error