命名空间
变体
操作

std::basic_stringbuf<CharT,Traits,Allocator>::view

来自 cppreference.cn
< cpp‎ | io‎ | basic stringbuf
 
 
 
 
std::basic_string_view<CharT, Traits> view() const noexcept;
(C++20 起)

创建并返回一个覆盖底层字符序列的 std::basic_string_view

  • 对于仅输入流,返回的视图表示范围 [eback(), egptr())
  • 对于输入/输出流或仅输出流,引用从 pbase() 到序列中最后一个字符的字符,而不管 egptr()epptr()
  • 如果流既非输入也非输出,则返回 std::basic_string_view<CharT, Traits>{}

为写入而打开的缓冲区中的成员字符序列可能会为了效率而过度分配。在这种情况下,仅引用已初始化的字符:这些字符是从构造函数的字符串参数、最近一次调用 str() 的设置器重载所使用的字符串参数,或从写操作中获得的。一个使用过度分配的典型实现会维护一个高水位标记指针来跟踪缓冲区已初始化部分的末尾,而返回的视图则引用从 pbase() 到高水位标记指针的字符。

目录

[编辑] 参数

(无)

[编辑] 返回值

一个覆盖底层字符序列的视图。

[编辑] 注意

如果底层字符序列被销毁或失效,使用此返回值是未定义行为,除非该返回值为空。

此函数通常通过 std::basic_istringstream::view()std::basic_ostringstream::view()std::basic_stringstream::view() 访问。

[编辑] 参阅

替换或获取关联字符字符串的副本
(公开成员函数) [编辑]
返回一个指向整个字符串的不可修改的 basic_string_view
(std::basic_string<CharT,Traits,Allocator> 的公开成员函数) [编辑]