std::experimental::basic_string_view

来自cppreference.com
 
 
实验性
技术规范
文件系统库 (文件系统 TS)
库基础 (库基础 TS)
库基础 2 (库基础 TS v2)
库基础 3 (库基础 TS v3)
并行扩展 (并行 TS)
并行扩展 2 (并行 TS v2)
并发扩展 (并发 TS)
并发扩展 2 (并发 TS v2)
概念 (概念 TS)
范围 (范围 TS)
反射 (反射 TS)
数学特殊函数 (特殊函数 TR)
实验性非 TS 功能特性
模式匹配
线性代数
std::execution
契约
2D 图形
 
 
 
在标头 <experimental/string_view> 定义
template<

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

> class basic_string_view;
(库基础 TS)

类模板 basic_string_view 描述一个能指代 char 式对象的常量连续序列的对象,序列首元素在零位置。

典型的实现仅保有两个成员:指向常量 CharT 的指针和大小。

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

在标头 <experimental/string_view> 定义
类型 定义
std::experimental::string_view std::experimental::basic_string_view<char>
std::experimental::wstring_view std::experimental::basic_string_view<wchar_t>
std::experimental::u16string_view std::experimental::basic_string_view<char16_t>
std::experimental::u32string_view std::experimental::basic_string_view<char32_t>

模板形参

CharT - 字符类型
Traits - 指定字符类型上的操作的特征类

成员类型

成员类型 定义
traits_type Traits
value_type CharT
pointer CharT*
const_pointer const CharT*
reference CharT&
const_reference const CharT&
const_iterator 由实现定义的老式随机访问迭代器 (LegacyRandomAccessIterator)
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 是同一类型,因为字符串视图是到常量字符序列中的视图。

成员函数

构造 basic_string_view
(公开成员函数)
对视图赋值
(公开成员函数)
迭代器
访问指向开头的迭代器
(公开成员函数)
返回指向末尾的迭代器
(公开成员函数)
返回指向开头的反向迭代器
(公开成员函数)
返回指向尾部的反向迭代器
(公开成员函数)
元素访问
访问指定字符
(公开成员函数)
带边界检查访问指定字符
(公开成员函数)
访问首字符
(公开成员函数)
访问最末字符
(公开成员函数)
返回指向视图的首字符的指针
(公开成员函数)
容量
返回字符数量
(公开成员函数)
返回最大字符数
(公开成员函数)
检查视图是否为空
(公开成员函数)
修改器
通过移动视图开头来缩减视图
(公开成员函数)
通过将尾部往回移动来缩减视图
(公开成员函数)
交换内容
(公开成员函数)
操作
从视图创建字符串
(公开成员函数)
复制字符
(公开成员函数)
返回子字符串
(公开成员函数)
比较两个视图
(公开成员函数)
在视图中查找字符
(公开成员函数)
寻找子字符串的最后出现
(公开成员函数)
检查首个出现的字符
(公开成员函数)
返回最末出现的字符
(公开成员函数)
查找首个未出现字符
(公开成员函数)
查找最末未出现字符
(公开成员函数)

常量

[静态]
特殊值。确切含义取决于语境
(公开静态成员常量)

非成员函数

以字典序比较两个视图
(函数模板)
输入/输出
进行视图的流输出
(函数模板)

辅助类

视图的散列支持
(类模板特化)

功能特性测试宏

__cpp_lib_experimental_string_view
至少为 201411 的值,指定支持 basic_string_view 模板
(宏常量)