fastdo  0.6.8
winux::GrowBuffer类 参考

高效的可增长缓冲区,1.33倍冗余量 更多...

#include <utilities.hpp>

类 winux::GrowBuffer 继承关系图:
winux::GrowBuffer 的协作图:

Public 成员函数

 GrowBuffer (size_t capacity=0)
 构造函数,初始化缓冲区的大小 更多...
 
 GrowBuffer (GrowBuffer const &other)
 
GrowBufferoperator= (GrowBuffer const &other)
 
 GrowBuffer (Buffer const &other)
 
GrowBufferoperator= (Buffer const &other)
 
 GrowBuffer (GrowBuffer &&other)
 移动构造函数 更多...
 
GrowBufferoperator= (GrowBuffer &&other)
 移动赋值操作 更多...
 
 GrowBuffer (Buffer &&other)
 移动构造函数1 更多...
 
GrowBufferoperator= (Buffer &&other)
 移动赋值操作1 更多...
 
void append (void const *data, size_t size)
 添加数据:C语言缓冲区 更多...
 
void append (AnsiString const &data)
 添加数据:AnsiString对象 更多...
 
void append (Buffer const &data)
 添加数据:Buffer对象 更多...
 
template<typename _PodType , size_t _Size = sizeof(_PodType)>
void append (_PodType const &data)
 添加数据:POD类型变量 更多...
 
template<typename _PodType , size_t _Count>
void append (_PodType const (&data)[_Count])
 添加数据:POD类型数组 更多...
 
template<typename _PodType >
void append (std::initializer_list< _PodType > list)
 添加数据:POD类型initializer_list 更多...
 
void erase (size_t start, size_t count=(size_t)-1)
 擦除数据,自动紧缩 更多...
 
- Public 成员函数 继承自 winux::Buffer
 Buffer ()
 默认构造函数 更多...
 
 Buffer (void const *buf, size_t size, bool isPeek=false)
 构造函数1 从一个缓冲区创建Buffer,可以指定是否为窥视模式 更多...
 
 Buffer (AnsiString const &data, bool isPeek=false)
 构造函数2 从一个AnsiString创建Buffer,可以指定是否为窥视模式 更多...
 
virtual ~Buffer ()
 
 Buffer (Buffer const &other)
 
Bufferoperator= (Buffer const &other)
 
 Buffer (Buffer &&other)
 移动构造函数 更多...
 
Bufferoperator= (Buffer &&other)
 移动赋值操作 更多...
 
 Buffer (GrowBuffer &&other)
 移动构造函数1 更多...
 
Bufferoperator= (GrowBuffer &&other)
 移动赋值操作1 更多...
 
void setBuf (void const *buf, size_t size, size_t capacity, bool isPeek)
 设置缓冲区,当isPeek为false时拷贝数据缓冲区 更多...
 
void setBuf (void const *buf, size_t size, bool isPeek)
 设置缓冲区,当isPeek为false时拷贝数据缓冲区 更多...
 
void alloc (size_t capacity, bool setDataSize=true)
 分配容量大小,当setDataSize为true时设置数据长度 更多...
 
void realloc (size_t newCapacity)
 重新调整容量的大小,保留数据内容 更多...
 
bool peekCopy (bool copyCapacity=false)
 把窥探模式变为拷贝模式,如果copyCapacity为true时连容量也一起拷贝,否则只拷贝数据。 更多...
 
void * detachBuf (size_t *size=nullptr)
 使Buffer对象不再管理内存资源 更多...
 
void free ()
 释放缓冲区 更多...
 
void * getBuf () const
 暴露缓冲区指针 更多...
 
template<typename _Ty >
_Ty * getBuf () const
 暴露缓冲区指针 更多...
 
void * get () const
 暴露缓冲区指针 更多...
 
template<typename _Ty >
_Ty * get () const
 暴露缓冲区指针 更多...
 
winux::byteoperator[] (size_t i)
 获取指定索引的字节 更多...
 
winux::byte const & operator[] (size_t i) const
 获取指定索引的字节 更多...
 
winux::byteget (size_t i)
 获取指定索引的字节 更多...
 
winux::byte const & get (size_t i) const
 获取指定索引的字节 更多...
 
winux::bytebegin ()
 
winux::byteend ()
 
winux::byte const * begin () const
 
winux::byte const * end () const
 
size_t getSize () const
 获取数据大小 更多...
 
size_t size () const
 获取数据大小 更多...
 
void _setSize (size_t dataSize)
 设置数据大小,不能超过容量大小(不建议外部调用) 更多...
 
size_t getCapacity () const
 获取容量大小 更多...
 
size_t capacity () const
 获取容量大小 更多...
 
 operator bool () const
 判断是否为一个有效的Buffer 更多...
 
template<typename _ChTy >
XString< _ChTy > toString () const
 转换到字符串 更多...
 
AnsiString toAnsi () const
 转换到AnsiString 更多...
 
UnicodeString toUnicode () const
 转换到UnicodeString 更多...
 

友元

class Buffer
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 winux::Buffer
static void * _Alloc (size_t size)
 
static void * _Realloc (void *p, size_t newSize)
 
static void _Free (void *p)
 
- Protected 属性 继承自 winux::Buffer
void * _buf
 缓冲区 更多...
 
size_t _dataSize
 数据的大小 更多...
 
size_t _capacity
 容量 更多...
 
bool _isPeek
 是否为窥视模式 更多...
 

详细描述

高效的可增长缓冲区,1.33倍冗余量

在文件 utilities.hpp659 行定义.

构造及析构函数说明

winux::GrowBuffer::GrowBuffer ( size_t  capacity = 0)
explicit

构造函数,初始化缓冲区的大小

winux::GrowBuffer::GrowBuffer ( GrowBuffer const &  other)
winux::GrowBuffer::GrowBuffer ( Buffer const &  other)
explicit
winux::GrowBuffer::GrowBuffer ( GrowBuffer &&  other)

移动构造函数

winux::GrowBuffer::GrowBuffer ( Buffer &&  other)

移动构造函数1

成员函数说明

void winux::GrowBuffer::append ( void const *  data,
size_t  size 
)

添加数据:C语言缓冲区

void winux::GrowBuffer::append ( AnsiString const &  data)
inline

添加数据:AnsiString对象

在文件 utilities.hpp684 行定义.

函数调用图:

void winux::GrowBuffer::append ( Buffer const &  data)
inline

添加数据:Buffer对象

在文件 utilities.hpp687 行定义.

函数调用图:

template<typename _PodType , size_t _Size = sizeof(_PodType)>
void winux::GrowBuffer::append ( _PodType const &  data)
inline

添加数据:POD类型变量

在文件 utilities.hpp691 行定义.

函数调用图:

template<typename _PodType , size_t _Count>
void winux::GrowBuffer::append ( _PodType const (&)  data[_Count])
inline

添加数据:POD类型数组

在文件 utilities.hpp695 行定义.

函数调用图:

template<typename _PodType >
void winux::GrowBuffer::append ( std::initializer_list< _PodType >  list)
inline

添加数据:POD类型initializer_list

在文件 utilities.hpp699 行定义.

void winux::GrowBuffer::erase ( size_t  start,
size_t  count = (size_t)-1 
)

擦除数据,自动紧缩

GrowBuffer& winux::GrowBuffer::operator= ( GrowBuffer const &  other)
GrowBuffer& winux::GrowBuffer::operator= ( Buffer const &  other)
GrowBuffer& winux::GrowBuffer::operator= ( GrowBuffer &&  other)

移动赋值操作

GrowBuffer& winux::GrowBuffer::operator= ( Buffer &&  other)

移动赋值操作1

友元及相关函数文档

friend class Buffer
friend

在文件 utilities.hpp711 行定义.


该类的文档由以下文件生成: