Wie können wir eine abweichende Nachricht (einen von wenigen Nachrichtentypen) in eine protobuf-Nachricht einfügen?
%Vor%Sie müssen es so machen:
%Vor% Wenn es viele Varianten gibt, möchten Sie vielleicht auch ein Tag-Feld hinzufügen, damit Sie has_*()
nicht für jedes einzelne überprüfen müssen.
Dies ist in den Protobuf-Dokumenten beschrieben: Ссылка
PS. Diese fehlende Funktion von Protobufs ist in Cap'n Proto , einem neuen Serialisierungssystem des gleichen Autors (mir), behoben: Cap'n Proto implementiert "Gewerkschaften" zu diesem Zweck. Ich habe auch in Protobufs Gewerkschaften implementiert, bevor ich Google verließ, aber es gelang mir nicht, meine Änderung in die Hauptleitung zu integrieren, bevor ich ging. Es tut uns leid. : (
EDIT: Es sieht so aus, als ob das Protobuf-Team meine Änderung zusammengeführt und Version 2.6.0 damit veröffentlicht hat. :) Siehe die Deklaration oneof
.
Tags und Links protocol-buffers