Use Smartpointers to handle ZeroMQ messages
This avoids that one forgets to deinit zmq messgaes.
A first Draft by @cconrads looks like this:
#include <memory>
std::unique_ptr<zmq_msg> make_new_message() {
auto p = std::unique_ptr<zmq_msg>(new zmq_msg, &zmq_msg_close);
zmq_msg_init(p.raw());
return p;
}
int main() {
auto p_msg = make_new_message();
}
Advantages:
- no Macros
- no Boost
Disadvantages:
- Heap usage (should be ok,
sizeof(zmq_msg) == 64
only)
Edited by Christoph Conrads