Protobuf не производит API, я хочу

Я пытаюсь использовать protobufs для сериализации моих данных, однако, когда я запускаю команду protobuf для файла.proto, он не предоставляет мне функций, которые, как он говорит, будут,

а именно serializeToString и parseFromString.

Есть идеи, почему это происходит?

1 ответ

Исходя из вашего комментария, вы нацелены на C++ (хотя вопрос помечен как protobuf.js).

Сгенерированный файл будет иметь классы, которые наследуются от базового класса protobuf:

class MyMessage : public ::google::protobuf::Message {
...
}

SerializeToString() (обратите внимание, что он чувствителен к регистру, с большим S) метод происходит из этого базового класса. Вы можете увидеть все методы базового класса здесь.

Так что просто попробуйте использовать метод из вашего кода, и он должен быть доступен, даже если он не определен напрямую в сгенерированном .pb.h файл.

Другие вопросы по тегам