27 std::make_shared<Buffer>() :
28 std::make_shared<Buffer>(size);
35 return std::make_shared<Buffer>(boost::asio::buffer(buffer));
39 return {
reinterpret_cast<const char *
>(buf.
data()), buf.
size()};
42 std::string
to_hex_string(
const Buffer &buf,
size_t length = 16u);
一块原始数据。 请注意,如果需要更多容量,则会分配一个新的内存块,并 删除旧的内存块。这意味着默认情况下,缓冲区只能增长。要释放内存,使用 clear 或 pop。
const_iterator begin() const noexcept
const value_type * data() const noexcept
直接访问分配的内存,如果没有分配内存则返回 nullptr。
size_type size() const noexcept
const_iterator end() const noexcept
static std::ostream & operator<<(std::ostream &out, const Buffer &buf)
static bool operator==(const Buffer &lhs, const Buffer &rhs)
static bool operator!=(const Buffer &lhs, const Buffer &rhs)
static std::string as_string(const Buffer &buf)
static shared_buffer make_empty(size_t size=0u)
std::shared_ptr< Buffer > shared_buffer
std::string to_hex_string(const Buffer &buf, size_t length)
shared_buffer make_random(size_t size)
std::shared_ptr< const Buffer > const_shared_buffer
static shared_buffer make(const T &buffer)