我正在尝试将 a 存储std::map<enum, int>
在 a 中boost::beast::multi_buffer
。到目前为止,我一直在使用boost::asio::buffer_copy
andboost::asio::buffer
来存储向量和 POD。但是,我找不到存储 STL 映射的方法。
我试过这个:
auto t_map = std::map<CODES, int>(); // CODES is an enum type
auto t_map_size = t_map.size() * sizeof(std::pair<CODES, int>);
auto tmp_buffer = boost::asio::buffer(t_map, t_map_size); // this is not supported
auto size = boost::asio::buffer_copy(t_map_size , tmp_buffer);
boost::beast::multi_buffer buffer;
buffer.commit(size);
- 有没有办法将 a 存储
std::map<enum, int>
在 a 中ConstBufferSequence
?(因为boost::asio::buffer_copy
需要一个) - 如果没有,是否有任何解决方法可以将 a 存储
std::map<enum, int>
在 a 中boost::beast::multi_buffer
?
谢谢!