std::setfill
来自 cppreference.com
定义在头文件 <iomanip> 中 |
||
template< class CharT > /*未指定*/ setfill( CharT c ); |
||
在表达式 out << setfill(c) 中使用时,会将流 out 的填充字符设置为 c.
内容 |
[编辑] 参数
c | - | 填充字符的新值 |
[编辑] 返回值
一个未指定类型对象,使得
- 如果 out 是类型 std::basic_ostream<CharT, Traits> 的对象,则表达式 out << setfill(c)
- 类型为 std::basic_ostream<CharT, Traits>&
- 值为 out
- 行为表现得好像调用了 f(out, c)
其中函数 f 定义如下
template<class CharT, class Traits> void f(std::basic_ios<CharT, Traits>& str, CharT c) { // set fill character str.fill(c); }
[编辑] 说明
可以使用 std::ostream::fill 获取当前填充字符。
[编辑] 示例
运行这段代码
输出
default fill: [ 42] setfill('*'): [********42]
[编辑] 缺陷报告
以下行为变更缺陷报告已追溯应用于之前发布的 C++ 标准。
DR | 应用于 | 已发布的行为 | 正确行为 |
---|---|---|---|
LWG 183 | C++98 | setbase 只能与类型为 std::ostream 的流一起使用 |
可与任何输出 字符流一起使用 |
[编辑] 参见
管理填充字符 ( std::basic_ios<CharT,Traits> 的公有成员函数) | |
设置填充字符的放置位置 (函数) | |
更改下一个输入/输出字段的宽度 (函数) |