C++/string view

维基教科书,自由的教学读本
< C++

标准模板库头文件 <string_view>是C++17提出的。

类模板basic_string_view[编辑]

只读的字符串视图。string_view的成员函数即对外接口与 string 相类似,但只包含读取字符串内容的部分。

  • string_view::substr()的返回值类型是string_view,不产生新的字符串,不会进行内存分配。
  • string::substr()的返回值类型是string,产生新的字符串,会进行内存分配。
  • string_view字面量的后缀是 sv。(string字面量的后缀是 s)
  • std::string_view std::basic_string_view<char>
  • std::u8string_view std::basic_string_view<char8_t> (C++20)
  • std::u16string_view std::basic_string_view<char16_t>
  • std::u32string_view std::basic_string_view<char32_t>
  • std::wstring_view std::basic_string_view<wchar_t>
  • std::hash<std::string_view> string_view 的散列支持
  • std::hash<std::wstring_view>
  • std::hash<std::u8string_view>
  • std::hash<std::u16string_view>
  • std::hash<std::u32string_view>


函数 以字典序比较两个字符串视图

  • operator==
  • operator!=
  • operator<
  • operator>
  • operator<=
  • operator>=

函数模板 operator<< 进行字符串视图的流输出