提升read_until文档

时间:2018-01-23 16:53:12

标签: c++ boost c-strings stdstring

对于Boost来说,我几乎是一个新手,更具体地说是Boost Asio--我已经陷入了深渊。我正在阅读Boost文档,我想知道我是否在这个例子中遇到了错字。在this page上,在示例下,有以下内容:

std::string data;
std::string n = boost::asio::read_until(s,
    boost::asio::dynamic_buffer(data), '\n');
std::string line = data.substr(0, n);
data.erase(0, n);

我无法编译,我认为这是因为n应该声明为std :: size_t,而不是std :: string - 我是否正确,还是我误解了?

1 个答案:

答案 0 :(得分:0)

是的,这是文档中的拼写错误。

示例应如下:

std::string data;
std::size_t n = boost::asio::read_until(s,
    boost::asio::dynamic_buffer(data), '\n');
std::string line = data.substr(0, n);
data.erase(0, n);

感谢Xirema和S.M的确认。