Как мне добавить методы сообщения Protobuf?Расширение Protobuf собственными методами
Предположим, у меня есть в моем файле .proto:
package proto;
message Person {
required string name = 1;
required int32 id = 2;
optional string email = 3;
}
, и я хочу, чтобы добавить метод, скажем, строку concatenateNameEmail()
к сообщению.
Что я могу сделать прямо сейчас, я создаю свой собственный класс C++, как это:
class Person : public proto::Person
{
public:
Person(proto::Person const & person_)
: proto::Person(person_)
{}
string concateNateNameEmail()
{
...
}
};
Так недостатком является то, мне нужно вызвать прото :: Person конструктор копирования. Есть ли более элегантное решение, чем это?
Я не думаю, что первый блок кода, содержащий " package "и" message "является синтаксисом C++. Причина, по которой« пакет »является синтаксисом, является, вероятно, потому, что это ключевое слово на каком-то языке, но я не думаю, что это ключевое слово в C++. – Arun
Прости, что я не был чист. Первый блок кода - это определение прото-сообщения. Позвольте мне прояснить этот пост. – sivabudh