我希望得到关于C++模板的一些指导。我一直在使用boost::asio
库来通过TCP进行通信。到目前为止,我一直在使用boost :: asio库中内置的存储容器。例如:Boost asio ConstBufferSequence - C++模板
boost::array<char, 128> buf;
boost::system::error_code error;
size_t len = socket.read_some(boost::asio::buffer(buf), error);
要读取套接字,我简单包扎boost::asio::buffer
类型的缓冲在我boost::array
对象。这工作正常,但现在我想反向工作。也就是说,我想重新写入套接字,从我已有的一些自定义存储类中提取数据。 我的问题是,如何使所需要的模板类型要求的意义是通过升压:: ASIO ::缓冲,或者更一般的可缠绕,参数类型由指定:
template<typename ConstBufferSequence>
std::size_t send(
const ConstBufferSequence & buffers
);
的API列出了ConstBufferSequence的要求,但我无法做出正面或反面的这一点。有人能帮助我理解吗?我想要传递给“发送”函数的类型需要公开哪些方法?
不完全是我想要的,但让事情变得更清晰。感谢你的回答。 :) – 2011-06-01 20:44:22