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 和 (un)formatted(i/o)utputfunction 要求页面链接。(或者,可能应该在要求页面上详细阐述行为,并从这里链接)。另请参阅 stackoverflow.com/a/35089910 |
[编辑] 示例
运行此代码
#include <fstream> #include <iostream> int main() { int ivalue; try { std::ifstream in("in.txt"); in.exceptions(std::ifstream::failbit); // may throw in >> ivalue; // may throw } catch (const std::ios_base::failure& fail) { // handle exception here std::cout << fail.what() << '\n'; } }
可能的输出
basic_ios::clear: iostream error