Please see my comment to the question. One very universal way of passing data between processes is using sockets; and, with C++, such solution can be multiplatform. Don't think that sockets are used only for networking. Historically, socket API was develop as IPC (Inter-Process Communication).
The second universal method is using
named pipes. Another one is the
shared memory block.
Please see:
http://en.wikipedia.org/wiki/Network_socket[
^],
http://en.wikipedia.org/wiki/Unix_domain_socket[
^],
http://en.wikipedia.org/wiki/Berkeley_sockets[
^],
http://en.wikipedia.org/wiki/Named_pipe[
^],
http://en.wikipedia.org/wiki/Shared_memory[
^].
For more information on IPC, please see:
http://en.wikipedia.org/wiki/Inter-process_communication[
^].
You could get more specific references and advice is you shared more information on your platforms, the goal of the communications between processes and your requirements. Some detail could be not so important, but not tagging your platform and not explaining your goals… this is too much of uncertainty. However, the information referenced above is good enough to get basic ideas; so you can start with them to understand what you really need.
—SA