Соглашения об именах в Protobuf

Оба result.class.to_s и result.class.name работают.

12
задан Blair Zajac 29 November 2010 в 22:00
поделиться

1 ответ

Кажется, что Google добавил, инструкция для repeated имена полей (укажите 4) в https://developers.google.com/protocol-buffers/docs/style в это время:

Использование pluralized называет для повторных полей.

repeated string keys = 1;
...
repeated MyMessage accounts = 17;

Это генерирует одно плохое имя функции для add_<field_name> функция членства:

// Bad method name.
auto* const newKey = msg.add_keys();
// OK!
auto* const anotherNewKey = msg.mutable_keys()->Add();
// OK!
auto const * const allKeys = msg.keys();
auto const& firstKeys = msg.keys(0);

можно было утверждать, что первый метод избыточен так или иначе. При помощи mutable_<field_name> функция членства я не вижу, что любые проблемы расценивают ужасные имена методов, если множественные имена полей используются для repeated поля.

Поэтому я попытаюсь следовать этой инструкции с этого времени. Другая причина его: Мы также склонны использовать множественные имена переменной для контейнеров/наборов в C++, например,

auto keys = std::vector<std::string>{};
0
ответ дан 2 December 2019 в 20:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: