函数
<iomanip>

std::resetiosflags

/*unspecified*/ resetiosflags (ios_base::fmtflags mask);
重置格式标志
取消由参数 mask 指定的格式标志。

其行为就好像在其插入/提取的流上调用了带有 mask 作为参数的成员函数 unsetf (它可以作为操纵符被插入/提取到输入流输出流)。

有关可以通过此操纵符函数修改的特定标志的更多信息,请参见 ios_base::fmtflags

此操纵符在头文件 <iomanip> 中声明。

参数

mask
表示要重置的标志的掩码。
fmtflags 是一个位掩码类型。

返回值

未指定。此函数只应作为流操纵符使用(见示例)。

示例

1
2
3
4
5
6
7
8
9
10
// resetiosflags example
#include <iostream>     // std::cout, std::hex, std::endl
#include <iomanip>      // std::setiosflags, std::resetiosflags

int main () {
  std::cout << std::hex << std::setiosflags (std::ios::showbase);
  std::cout << 100 << std::endl;
  std::cout << std::resetiosflags(std::ios::showbase) << 100 << std::endl;
  return 0;
}

此代码首先设置 showbase 标志,然后使用 resetiosflags 操纵符将其重置。 输出

0x64
64


数据竞争

它被插入/提取到的流对象会被修改。
对同一流对象的并发访问可能会引发数据竞争。

异常安全

基本保证:如果抛出异常,流处于有效状态。

另见