operator<<(std::basic_string_view)
来自 cppreference.com
< cpp | string | basic string view
在头文件 <string_view> 中定义 |
||
template< class CharT, class Traits > std::basic_ostream<CharT, Traits>& |
(自 C++17) | |
表现为 FormattedOutputFunction。在构建并检查哨兵对象后,确定输出格式填充.
然后将结果序列 seq(v 的内容,带有填充)中的每个字符存储到输出流 os 中,就好像通过调用 os.rdbuf()->sputn(seq, n) 一样,其中 n 是 std::max(os.width(), str.size()).
最后,调用 os.width(0) 以取消 std::setw 的影响(如果有)。
内容 |
[edit] 异常
如果在输出过程中抛出异常,可能会抛出 std::ios_base::failure。
[edit] 参数
os | - | 字符输出流 |
v | - | 要插入的视图 |
[edit] 返回值
os
[edit] 示例
运行此代码
#include <iomanip> #include <iostream> #include <string_view> int main() { constexpr std::string_view s{"abc"}; constexpr int width{5}; // fill/left/right properties are kept until changed std::cout << std::setfill('-'); std::cout << std::left; std::cout << '[' << std::setw(width) << s << "]\n"; std::cout << '[' << std::setw(width) << s << "]\n"; std::cout << std::right; std::cout << '[' << std::setw(width) << s << "]\n"; // width is reset after each call std::cout << '[' << s << "]\n"; }
输出
[abc--] [abc--] [--abc] [abc]
[edit] 参见
对字符串执行流输入和输出 (函数模板) |