std::basic_string_view

来自cppreference.com
< cpp‎ | string
 
 
 
 
定义于头文件 <string_view>
template<

    class CharT,
    class Traits = std::char_traits<CharT>

> class basic_string_view;
(C++17 起)

类模板basic_string_view描述一个可引用常量连续类char对象序列的对象,序列的首元素在零位。

典型的实现仅保有二个成员:到常量CharT的指针和序列大小。

提供数种对常用字符类型的typedef:

定义于头文件 <string_view>
类型 定义
std::string_view std::basic_string_view<char>
std::wstring_view std::basic_string_view<wchar_t>
std::u16string_view std::basic_string_view<char16_t>
std::u32string_view std::basic_string_view<char32_t>

目录

[编辑] 模板参数

CharT - 字符类型
Traits - 指定在字符类型上操作的字符特性CharTraits)类。Traits::char_type必须与CharT命名同一类型。

[编辑] 成员类型

成员类型 定义
traits_type Traits
value_type CharT
pointer CharT*
const_pointer const CharT*
reference CharT&
const_reference const CharT&
const_iterator 实现定义的随机访问迭代器RandomAccessIterator
iterator const_iterator
reverse_iterator const_reverse_iterator
const_reverse_iterator std::reverse_iterator<const_iterator>
size_type std::size_t
difference_type std::ptrdiff_t

注意:iteratorconst_iterator是同一种类型,因为string_view是对于常量字符序列的视图。

[编辑] 成员函数

构造一个basic_string_view
(公开成员函数) [编辑]
对视图赋值
(公开成员函数) [编辑]
迭代器
返回指向起始位置的迭代器
(公开成员函数) [编辑]
返回指向结尾的迭代器
(公开成员函数) [编辑]
返回指向起始的反向迭代器
(公开成员函数) [编辑]
返回指向结尾的反向迭代器
(公开成员函数) [编辑]
元素访问
访问指定字符
(公开成员函数) [编辑]
访问指定字符,带有边界检查
(公开成员函数) [编辑]
访问首个字符
(公开成员函数) [编辑]
访问最末字符
(公开成员函数) [编辑]
返回指向视图首字符的指针
(公开成员函数) [编辑]
容量
返回字符数
(公开成员函数) [编辑]
返回最大字符数
(公开成员函数) [编辑]
检查视图是否为空
(公开成员函数) [编辑]
修改器
以后移起点收缩视图
(公开成员函数) [编辑]
以前移终点收缩视图
(公开成员函数) [编辑]
交换内容
(公开成员函数) [编辑]
操作
复制字符
(公开成员函数) [编辑]
返回子串
(公开成员函数) [编辑]
比较二个视图
(公开成员函数) [编辑]
在视图中查找字符
(公开成员函数) [编辑]
寻找子串的最后一次出现
(公开成员函数) [编辑]
查找字符的首次出现
(公开成员函数) [编辑]
查找字符的最后一次出现
(公开成员函数) [编辑]
查找字符的首次不出现
(公开成员函数) [编辑]
查找字符的最后一次不出现
(公开成员函数) [编辑]

常量

[静态]
特殊值。准确含义依赖于语境。
(公开静态成员常量) [编辑]

[编辑] 非成员函数

以字典序比较二个字符串视图
(函数模板) [编辑]
输入/输出
对字符串视图进行流输出
(函数模板) [编辑]

[编辑] 字面量

定义于内联命名空间std::literals::string_view_literals
创建一个字符数组字面量的字符串视图
(函数) [编辑]

[编辑] 帮助类

支持basic_string_view的哈希
(类模板特化) [编辑]