Существуют ли бесплатные инструменты для преобразования кода С++ в idl? Я думаю о чем-то похожем на java2idl.
Инструменты C++ для IDL
Ответы (1)
Java2idl - это особый случай... он принимает байтовый код в качестве входных данных, поэтому он использует отражение, чтобы решить, как выглядит класс, а затем записывает совместимый IDL. Поскольку C++ не поддерживает отражение, вместо этого вам нужен парсер/препроцессор исходного кода.
Кроме проектов студенческих классов, я никогда не сталкивался с бесплатными генераторами IDL. Большинству людей нужно пойти в другом направлении... определить интерфейс или класс для реализации как на C++, так и на CORBA, и поэтому они сначала пишут его непосредственно на IDL.
Если вы работаете с небольшими объемами кода, выполняйте преобразование вручную. Если это большие суммы, вам нужно будет потратить деньги на инструменты или время на написание собственного. Вы могли бы потенциально сделать свое собственное «отражение», используя что-то вроде ускоренной сериализации, чтобы помочь автоматизировать анализ ваших структур (данные объекта на входе, макет IDL).