Boost C++ 库

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

面向缓冲区的同步随机访问读取设备要求 - Boost C++ 函数库
PrevUpHomeNext

在下表中,a 表示一个同步随机访问读取设备对象,o 表示一个 boost::uint64_t 类型的偏移量,mb 表示一个满足 可变缓冲区序列 要求的对象,而 ec 表示一个 error_code 类型的对象。

表 30. 面向缓冲区的同步随机访问读取设备要求

操作

type

语义、前/后置条件

a.read_some_at(o, mb);

size_t

等同于

error_code ec;
size_t s = a.read_some_at(o, mb, ec);
if (ec) throw system_error(ec);
return s;

a.read_some_at(o, mb, ec);

size_t

从偏移量 o 处的设备 a 读取一个或多个字节的数据。

可变缓冲区序列 mb 指定了存放数据的内存。 read_some_at 操作应该在继续处理下一个缓冲区之前,完全填满序列中的一个缓冲区。

如果成功,则返回读取的字节数,并将 ec 设置为 !ec 为 true。如果发生错误,则返回 0,并将 ec 设置为 !!ec 为 true。

如果序列 mb 中所有缓冲区的总大小为 0,则函数应立即返回 0



PrevUpHomeNext