cppzmq is a C++ binding for libzmq. It has the following design goals:
* cppzmq maps the libzmq C API to C++ concepts. In particular:
- it is type-safe (the libzmq C API exposes various class-like
concepts as void*)
- it provides exception-based error handling (the libzmq C API
provides errno-based error handling)
- it provides RAII-style classes that automate resource management
(the libzmq C API requires the user to take care to free resources
explicitly)
* cppzmq is a light-weight, header-only binding. You only need to
include the header file zmq.hpp (and maybe zmq_addon.hpp) to use it.
* zmq.hpp is meant to contain direct mappings of the abstractions
provided by the libzmq C API, while zmq_addon.hpp provides additional
higher-level abstractions.