Инструменты C++ для IDL

Существуют ли бесплатные инструменты для преобразования кода С++ в idl? Я думаю о чем-то похожем на java2idl.


person rubyer    schedule 27.08.2009    source источник
comment
Что за ИДЛ? КОРБА холостого хода? Sun/ONC RPC IDL? МС/DCE IDL?   -  person Martin v. Löwis    schedule 28.08.2009
comment
Я предполагаю, что CORBA IDL из ссылки на java2idl. На минуту я немного обрадовался, надеясь, что это IDL, научный язык программирования...   -  person Jim Lewis    schedule 28.08.2009


Ответы (1)


Java2idl - это особый случай... он принимает байтовый код в качестве входных данных, поэтому он использует отражение, чтобы решить, как выглядит класс, а затем записывает совместимый IDL. Поскольку C++ не поддерживает отражение, вместо этого вам нужен парсер/препроцессор исходного кода.

Кроме проектов студенческих классов, я никогда не сталкивался с бесплатными генераторами IDL. Большинству людей нужно пойти в другом направлении... определить интерфейс или класс для реализации как на C++, так и на CORBA, и поэтому они сначала пишут его непосредственно на IDL.

Если вы работаете с небольшими объемами кода, выполняйте преобразование вручную. Если это большие суммы, вам нужно будет потратить деньги на инструменты или время на написание собственного. Вы могли бы потенциально сделать свое собственное «отражение», используя что-то вроде ускоренной сериализации, чтобы помочь автоматизировать анализ ваших структур (данные объекта на входе, макет IDL).

person Rick Berge    schedule 24.06.2010