operator<<(std::basic_string_view)
提供: cppreference.com
<tbody>
</tbody>
| ヘッダ <string_view> で定義
|
||
template <class CharT, class Traits> std::basic_ostream<CharT, Traits>& operator<<(std::basic_ostream<CharT, Traits>& os, std::basic_string_view <CharT, Traits> v); |
(C++17以上) | |
FormattedOutputFunction として動作します。 sentry オブジェクトの構築および確認の後、出力書式のパディングが以下のように決定されます。
- a)
v.size()がos.width()より小さくなければ、範囲[v.begin(), v.end())をそのまま使用します。 - b) そうでなく、
(os.flags() & ios_base::adjustfield) == ios_base::leftであれば、文字シーケンスの後にos.fill()文字のコピーをos.width()-v.size()個置きます。 - c) そうでなければ、文字シーケンスの前に
os.fill()文字のコピーをos.width()-v.size()個置きます。
その後、 os.rdbuf()->sputn(seq, std::max(os.width(), str.size())) によって行われるかのように、結果の文字シーケンス (v の内容 + パディング) から各文字が出力ストリーム os に格納されます。
最後に、 std::setw の効果 (もしあれば) を取り消すために、 os.width(0) を呼びます。
例外
出力中に例外が投げられた場合、 std::ios_base::failure を投げるかもしれません。
引数
| os | - | 文字出力ストリーム |
| v | - | 挿入するビュー |
戻り値
os。
関連項目
| 文字列のストリーム入出力を行います (関数テンプレート) |