函数
<iomanip>

std::setiosflags

/*unspecified*/ setiosflags (ios_base::fmtflags mask);
设置格式标志
设置由参数 mask 指定的格式标志。

其行为如同在流上调用成员 setf 并将 mask 作为参数(它可以在输入流输出流上进行插入/提取)。

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

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

参数

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

返回值

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

示例

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

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

此代码使用 setiosflags 来激活 showbaseuppercase 标志,其效果与插入操纵器 showbaseuppercase 相同。

输出

0X64


数据竞争

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

异常安全

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

另见