此類型由成員函數標誌setf
和unsetf
用作其參數和/或返回值。
聲明
以下是ios_base::fmtflags
的聲明。
std::ios_base::fmtflags ff;
還可以使用由三組選擇性標誌的每一組的值的組合構成的三個附加位掩碼常數,如下所示 -
標誌值 | 相當於 |
---|---|
adjustfield | left / right / internal |
basefield | dec / oct / hex |
floatfield | scientific / fixed |
這些常量的值可以使用OR
按位運算符(|
)組合成單個fmtflags值。
示例
下麵的例子顯示了ios_base::fmtflags
用法。
#include <iostream>
int main () {
std::cout.setf (std::ios_base::hex , std::ios_base::basefield);
std::cout.setf (std::ios_base::showbase);
std::cout << 100 << '\n';
std::cout.setf (std::ios::hex , std::ios::basefield);
std::cout.setf (std::ios::showbase);
std::cout << 100 << '\n';
std::cout.setf (std::cout.hex , std::cout.basefield);
std::cout.setf (std::cout.showbase);
std::cout << 100 << '\n';
std::ios_base::fmtflags ff;
ff = std::cout.flags();
ff &= ~std::cout.basefield;
ff |= std::cout.hex;
ff |= std::cout.showbase;
std::cout.flags(ff);
std::cout << 100 << '\n';
std::cout << std::hex << std::showbase << 100 << '\n';
return 0;
}
編譯和運行上面的程式,將產生以下結果 -
0x64
0x64
0x64
0x64
0x64
上一篇:
ios庫<ios>
下一篇:無