вам нужен IDL ( язык определения интерфейса ). Попробуйте googling:
- протокол буфера.
- ICE (механизм интернет-связи).
- Возможно, Microsoft COM?.
- - изменить: новая запись - похоже, Microsoft имеет IDL компилятор .
Все зависит от того, что вы хотите. Все вышеперечисленные технологии имеют элемент IDL и поставляются с собственным набором багажа. Лично я бы оставался на низком уровне C / C ++: D. Поэтому я бы использовал Google "Imatix GSL" и использовал упомянутую технологию для моделирования проблемы в XML и создания структур данных в любом Язык программирования - эта технология очень простая и тонкая и требует опытного программиста, поэтому, если это не имеет смысла, вам следует придерживаться IDL.
- редактировать: техника программирования -
Вы можете решить проблему чисто техникой, если хотите. Хаос наступает, когда строгость инженерного искусства рушится. Если вы решили использовать брандмауэр и инкапсулировать проблему в чистый код C / C ++, вам не придется беспокоиться о падении интерфейса в зависимом коде - это потому, что любой полезный язык может взаимодействовать с ABI вашей платформы (простые функции C: P). Суть не в том, чтобы выставить внутренние объекты, а просто в интерфейсе с непрозрачными типами, такими как числовые дескрипторы, которые представляют объекты и функции, которые могут быть выполнены для ваших типов.