<string_view>

クラス テンプレート basic_string_view と関連する型と演算子を定義します。 (コンパイラ オプション std:c++17 以降が必要です。)

構文

#include <string_view>

解説

テンプレートの特殊化の string_view ファミリは、読み取り専用で例外セーフな非所有のハンドルを、シーケンスの最初の要素を 0 の位置にして、文字列のようなオブジェクトの文字データに効率的に渡す方法を提供します。 型 string_view の関数パラメーター (basic_string_view<char> の typedef) は、std::stringchar*、または、string_view への暗黙的な変換が定義されているナロー文字の他の文字列に似たクラスをなどの引数を受け取ることができます。 同様に、wstring_viewu16string_view、または u32string_view のパラメーターは、暗黙的な変換が定義されている任意の文字列型を受け入れることができます。 詳細については、「basic_string_view クラス」を参照してください。

Typedefs

型名 説明
string_view char 型の要素を持つ特殊化したクラス テンプレート basic_string_view
wstring_view wchar_t 型の要素を持つ特殊化したクラス テンプレート basic_string_view
u16string_view char16_t 型の要素を持つ特殊化したクラス テンプレート basic_string_view
u32string_view char32_t 型の要素を持つ特殊化したクラス テンプレート basic_string_view

演算子

<string_view> 演算子を使用すると、string_view オブジェクトを変換可能な任意の文字列型のオブジェクトと比較できます。

Operator 説明
operator!= 演算子の左側のオブジェクトが右側のオブジェクトと等しくないかどうかを調べます。
operator== 演算子の左側の オブジェクトが右側の オブジェクトと等しいかどうかを調べます。
operator< 演算子の左側のオブジェクトが右側のオブジェクトより小さいかどうかを調べます。
operator<= 演算子の左側の オブジェクトが右側の オブジェクト以下かどうかを調べます。
operator<\< 出力ストリームに string_view を挿入するテンプレート関数。
operator> 演算子の左側のオブジェクトが右側のオブジェクトより大きいかどうかを調べます。
operator>= 演算子の左側の オブジェクトが右側の オブジェクト以上であるかどうかを調べます。

リテラル

Operator 説明
sv 追加先の文字列リテラルの型に応じて、string_viewwstring_viewu16string_view、または u32string_view を構築します。

クラス

クラス 説明
basic_string_view クラス 任意の文字に似たオブジェクトのシーケンスに読み取り専用のビューを提供するクラス テンプレート。
hash string_view のハッシュ値を生成する関数オブジェクト。

要件

  • ヘッダー: <string_view>

  • 名前空間: std

  • コンパイラ オプション: std:c++17 以降。

関連項目

ヘッダー ファイル リファレンス