Boost C++ 库

……世界上最受推崇、设计最精良的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ Coding Standards

Buffer - Boost C++ 函数库

缓冲区概念

缓冲区是指可以放入和取出对象的容器。缓冲区概念有很少的要求。它不要求存储对象的特定顺序,也不要求取出对象的特定顺序,但是,通常存在某种排序策略。

符号约定

B 是模拟缓冲区的类型。
T 是 的值类型B.
t 是一个对象,类型为T.

成员

要模拟缓冲区概念,类型必须具有以下成员。

成员 描述
value_type 存储在缓冲区中的对象的类型。值类型必须是可赋值的。
size_type 一个无符号整数类型,用于表示缓冲区中的对象数量。
void push(const T& t) 插入t放入缓冲区。size()将增加一。
void pop() 从缓冲区移除一个对象。size()将减少一。前置条件empty()false.
T& top() 返回缓冲区中某个对象的可变引用。前置条件empty()false.
const T& top() const 返回缓冲区中某个对象的常量引用。前置条件empty()false.
size_type size() const 返回缓冲区中的对象数量。不变量size() >= 0.
bool empty() const 等同于b.size() == 0.

复杂性保证

模型


版权所有 © 2000-2001 Jeremy Siek, Indiana University and C++ Library & Compiler Group/SGI (jsiek@engr.sgi.com)