Недавно я начал экспериментировать с плоскими буферами и столкнулся с очень странной проблемой. Я могу перевести схему flatb на c ++ и скомпилировать мой код c ++ (который включает в себя сгенерированный c ++) без ошибок. Я даже могу кодировать объект с помощью плоских буферов MyEventBuilder(...)
, Тем не менее, нет соответствующего GetMyEvent(...)
метод!
Я набросился на GetMyEvent
в .h файле, сгенерированном flatc, и ничего релевантного не появляется. Очевидно, что я делаю что-то не так, это слишком большая проблема, чтобы просто быть ошибкой. Тем не менее, я внимательно следил за документами. Я также разместил этот вопрос в группе Google Flatbuffers, пока нет ответа.
Кто-нибудь еще видел это? Любые идеи, что может вызвать это (я надеюсь и предполагаю, что это просто глупая ошибка с моей стороны, а не проблема с плоскими буферами)?
TLDR: flatb генерирует метод для кодирования моего объекта c ++ в байтовый массив, но не метод для преобразования байтового массива обратно в объект c ++!
У тебя есть root_type
определены в вашем определении Flatbuffer? Я обнаружил, что Get Meton генерируется только для таблицы с этим определенным.