MessagePack is an efficient binary serialization format.
#include "msgpack.hpp"class cpx { double re; double im; public: MSGPACK_DEFINE(re, im); ... };
cpx data;data.set_re(1.0); data.set_im(2.13); msgpack::sbuffer sbuf; msgpack::pack(sbuf, data);
msgpack::unpacked msg;
msgpack::unpack(&msg, sbuf.data(), sbuf.size());
msgpack::object obj = msg.get();
cpx rdata;
obj.convert(&rdata);Boost.Asio is a cross-platform c++ library for network and low-level I/O programming...



error_code, and then passes it to your completion handler. #include "boost/asio.hpp"...using boost::asio::ip::tcp;...int main(int argc, char *argv[]){...boost::asio::io_service io_service;tcp::resolver resolver(io_service);tcp::resolver::query query(argv[1], argv[2]); // addr, porttcp::resolver::iterator endpoint_iter = relover.resolve(query);tcp::socket socket(io_service);boost::asio::connect(socket, endpoint_iter);...