我正在查看Boost 网站上的HTTP Server 3示例。连接类中有以下代码:
boost::tribool result;
boost::tie(result, boost::tuples::ignore) = request_parser_.parse(request_, buffer_.data(), buffer_.data() + bytes_transferred);
声明parse
为
template <typename InputIterator>
boost::tuple<boost::tribool, InputIterator> parse(request& req, InputIterator begin, InputIterator end)
我相信目标是将返回的值复制tribool
到局部变量。boost::tie
但是,如果可以写类似的东西,那么通过临时对象 () 来做这件事有什么意义
boost::tuple<boost::tribool, char*> result = request_parser_.parse(request_, buffer_.data(), buffer_.data() + bytes_transferred);
// Our tribool is available via result.get<0>();
?