C++ 教程

C++ 教程 C++ 简介 C++ 入门 C++ 语法 C++ 输出 C++ 注释 C++ 变量 C++ 用户输入 C++ 数据类型 C++ 运算符 C++ 字符串 C++ 数学运算 C++ 布尔值 C++ 条件语句 C++ Switch 语句 C++ While 循环 C++ For 循环 C++ Break/Continue 语句 C++ 数组 C++ 引用 C++ 指针

C++ 函数

C++ 函数 C++ 函数参数 C++ 函数重载

C++ 面向对象

C++ OOP C++ 类和对象 C++ 类方法 C++ 构造函数 C++ 访问修饰符 C++ 封装 C++ 继承 C++ 多态

C++ 高级教程

C++ 文件 C++ 异常处理 C++ 动态内存 C++ 命名空间 C++ 模板 C++ 预处理器 C++ 信号处理 C++ 多线程 C++ Web 编程 C++ 正则表达式

C++ 如何使用

C++ 两个数字相加

C++ 标准库参考

C++ 标准库 - 简介 C++ 标准库 - <fstream> C++ 标准库 - <iomanip> C++ 标准库 - <ios> C++ 标准库 - <iosfwd> C++ 标准库 - <iostream> C++ 标准库 - <istream> C++ 标准库 - <ostream> C++ 标准库 - <sstream> C++ 标准库 - <streambuf> C++ 标准库 - <atomic> C++ 标准库 - <complex> C++ 标准库 - <exception> C++ 标准库 - <functional> C++ 标准库 - <limits> C++ 标准库 - <locale> C++ 标准库 - <memory> C++ 标准库 - <new> C++ 标准库 - <numeric> C++ 标准库 - <regex> C++ 标准库 - <stdexcept> C++ 标准库 - <string> C++ 标准库 - <thread> C++ 标准库 - <tuple> C++ 标准库 - <typeinfo> C++ 标准库 - <utility> C++ 标准库 - <valarray>

C++ 模板库参考

C++ STL 库 - <array> C++ STL 库 - <bitset> C++ STL 库 - <deque> C++ STL 库 - <forward_list> C++ STL 库 - <list> C++ STL 库 - <map> C++ STL 库 - <queue> C++ STL 库 - <set> C++ STL 库 - <stack> C++ STL 库 - <unordered_map> C++ STL 库 - <unordered_set> C++ STL 库 - <vector> C++ STL 库 - <algorithm> C++ STL 库 - <iterator>

C++ 实例

C++ 实例 C++ 练习 C++ 测验



C++ 库 - <basic_stringbuf>

简介

它是一个流缓冲区,用于读取和写入 basic_string 对象,并且此类的对象在内部维护一个字符序列,它们用作其关联的输入序列和/或关联的输出序列。 内部序列可以从 basic_string 对象初始化,或使用成员 str 复制到一个对象。


定义

下面是 std::basic_stringbuf 的定义。

template < class charT,                           
           class traits = char_traits<charT>,     
           class Alloc = allocator<charT>         
           > class basic_stringbuf;

参数

  • charT − 字符类型。

  • traits − 定义流对象使用的字符的基本属性的字符特征类。

  • int_type − 整数类型。

  • Alloc − 用于定义 basic_string 对象的存储分配模型的分配器对象的类型。 默认使用分配器类模板,它定义了最简单的内存分配模型,并且与值无关。

从 basic_streambuf 继承的公共成员函数

序号 Locales & 定义
1 event

类型以指示事件类型

2 event_callback

事件回调函数类型

公共成员函数

序号 成员类型 & 定义
1 pubimbue

It is an imbue locale

2 getloc

它用于获取当前语言环境

缓冲区管理和定位

序号 缓冲区管理和定位 & 定义
1 pubsetbuf

用于设置缓冲区数组

2 pubseekoff

用于将内部位置指针设置为相对位置

3 pubseekpos

用于将内部位置指针设置为绝对位置

4 pubsync

它用于同步流缓冲区

输入函数

序号 输入函数 & 定义
1 in_avail

它用于获取可读取的字符数

2 snextc

它用于前进到下一个位置并获取字符

3 sbumpc

用于获取当前字符并前进到下一个位置

4 sgetc

用于获取当前字符

5 sgetn

它用于获取字符序列

6 sputbackc

它用于放回字符

7 sungetc

用于减少当前位置

输出函数

序号 输出 & 定义
1 sputc

用于放置字符并前进到下一个位置

2 sputn

它用于放置字符序列

受保护的虚拟函数覆盖

序号 虚拟函数 & 定义
1 setbuf

用于设置缓冲区

2 seekoff

用于将位置指针设置为相对位置

3 seekpos

用于将位置指针设置为绝对位置

4 underflow

它用于获取字符

5 pbackfail

它用于放回字符

6 overflow

它用于放置字符

受保护的成员函数

以下受保护的成员函数提供对这些指针的访问 −

输入序列

序号 输入序列 & 定义
1 eback

它用于指向输入序列开头的指针

2 gptr

它用于指向输入序列当前位置的指针

3 egptr

它用于指向输入序列结尾的指针

4 gbump

用于获取指针

5 setg

用于设置输入序列指针

输出序列(put)

序号 输出序列 & 定义
1 pbase

它用于指向输出序列开头的指针

2 pptr

用于指向输出序列当前位置的指针

3 epptr

它用于指向输出序列结尾的指针

4 pbump

用于增加 put 指针

5 setp

用于设置输出序列指针

复制

序号 复制 & 定义
1 operator=

它用于流缓冲区分配

2 swap

它用于交换流缓冲区