You will not be able to pass a pointer across application boundaries as the processes will have different address spaces. If you need to refer to that object and initiate operations against it you will need to use a distributed object system or other interprocess communication layer.
The impression I get is that you want to spawn the child process, have it update some shared data structure and then exit. One possibility would be to use a shared memory system such as mmap (2) or System V shared memory. Unfortunately portable shared memory is a bit harder to achieve across Windows and Unix/Linux, and you would probably have to make some platform specific wrappers. This MSDN article should give you a starter on a mmap-like facility on Windows, but I've never done shared memory on this platform so I can't really vouch for any of the ins and outs.
Another possibility would be to serialise the object and pass the serialised data structure between the processes with a pipe or other mechanism. Again, doing this portably is somewhat fraught as IPC on Unix and Windows works quite differently.
Note that with shared memory, the object will have to be initialised within the shared memory pool, which means that this will have to be allocated first. Otherwise you will need to copy the data in and out of the shared pool explicitly. If the data structure has any pointers within it then this movement will break the pointers.
The latter point also means that the parent ahd child process will also need to map the shared memory into the same virtual address if you intend to follow pointers within the shared data structure. The alternative if you need references within the data structure is to implement them as handles or offsets from a base. This will complicate the code that builds your data structure so mapping to the same address so you can use pointers is a win.
Also swot up on security of files used for mmap if you decide to use this.