Die Google protobuf erlauben Sie mir proto Code wie folgt zu schreiben:Warum protobuf beide erforderlich/optional Feld "default" Wert annimmt, erwarte ich, dass nur "optional" sollte
syntax="proto2";
message hello
{
optional int32 id=1;
required string str=2[default="abc"];
optional int32 op=3 [default=15];
}
Es kompiliert, kein Problem. Ich verstehe das nicht einfach, denn für das "optionale" Feld, wenn kein Wert angegeben ist, gibt der Dekodierstrom den Standardwert zurück, es ist OK. Aber was ist mit dem Feld "erforderlich", es kann nicht leer sein, also wie sein "Standard" auch gültig ist? In welchem Szenario?