C++ IOS 库 - setstate


描述

它用于检查设置错误状态标志。通过将当前标志与参数状态中的标志组合来修改当前内部错误状态标志(就像执行按位或运算)。任何已设置的错误位标志都不会被清除。请参阅 memberclear 以获取类似的功能。。如果调用此函数时没有流缓冲区与流关联,则会自动设置 badbit 标志(无论参数状态中传递的该位的值是什么)。

宣言

以下是 ios::setstate 函数的声明。

void setstate (iostate state);

参数

state - ios_base::iostate 类型的对象,可以将以下成员常量的任意组合作为值 -

iostate价值

(成员常数)

表示 检查状态标志的函数
好的() 结束时间() 失败() 坏的() rdstate()
好比特 无错误(零值iostate true false false false 好比特
尾数 输入操作到达文件结尾 false true false false 尾数
故障位I/O 操作逻辑错误 false false true false 故障位
坏比特I/O 操作读/写错误 false false true true 坏比特

返回值

非。

例外情况

基本保证- 如果抛出异常,则流处于有效状态。如果生成的错误状态标志不是 goodbit 并且为该状态设置了抛出成员异常,则它会引发成员类型失败的异常。

数据竞争

修改流对象。

对同一流对象的并发访问可能会导致数据争用。

ios.htm