Вы не сможете передавать указатель через границы приложения, поскольку процессы будут иметь разные адресные пространства.Если вам нужно обратиться к этому объекту и инициировать операции с ним, вам нужно будет использовать распределенную объектную систему или другой уровень межпроцессного взаимодействия.
У меня сложилось впечатление, что вы хотите порождать дочерний процесс, имейте этообновить некоторую общую структуру данных и затем выйти.Одной из возможностей может быть использование системы с общей памятью, например mmap (2) или System V совместно используемой памяти .К сожалению, переносимая общая память в Windows и Unix / Linux немного сложнее, и вам, вероятно, придется создать некоторые обертки для конкретной платформы. Эта статья MSDN должна дать вам стартовое представление о mmap-подобном средстве в Windows, но я никогда не делал общую память на этой платформе, поэтому я не могу поручиться за любые входы и выходы.
Другой возможностью было бы сериализовать объект и передать сериализованную структуру данных между процессами с помощью конвейера или другого механизма.Опять же, делать это портативно несколько чревато, поскольку IPC в Unix и Windows работает совершенно по-разному.
Обратите внимание, что при использовании совместно используемой памяти объект должен быть инициализирован в пуле совместно используемой памяти, что означает, чтораспределяться первым.В противном случае вам придется явно копировать данные в общий пул и из него.Если в структуре данных есть какие-либо указатели, то это движение нарушит указатели.
Последний пункт также означает, что родительский и дочерний процессы также должны будут сопоставить разделяемую память с одним и тем же виртуальным адресом, если вы намерены следовать указателям в общей структуре данных.Альтернативой, если вам нужны ссылки в структуре данных, является их реализация в виде дескрипторов или смещений от базы.Это усложнит код, который строит вашу структуру данных, поэтому сопоставление с одним и тем же адресом, чтобы вы могли использовать указатели, является выигрышем.
Кроме того, повышайте безопасность файлов, используемых для mmap, если вы решите использовать это.