std::basic_ios<CharT,Traits>::exceptions
来自cppreference.com
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