首页 >后端开发 >Golang >.proto 文件中的枚举变量是否必须大写?

.proto 文件中的枚举变量是否必须大写?

WBOY
WBOY转载
2024-02-09 12:20:231013浏览

.proto 文件中的枚举变量是否必须大写?

在.proto文件中,枚举变量是否必须大写是一个常见的问题。根据Google Protocol Buffers的官方文档,对于枚举变量的命名,没有明确要求必须大写。但是,习惯上推荐使用大写来表示枚举变量,以增加可读性和代码的一致性。此外,如果你使用其他语言生成代码,如Java或C++,一般都会将枚举变量转换为大写形式。总的来说,虽然.proto文件中的枚举变量是否必须大写没有严格规定,但建议使用大写以符合通用的编程规范和习惯。

问题内容

我想创建以下格式的枚举,但我的原型扩展抛出错误,是否强制将枚举大写并仅使用下划线?

enum Language {
    en = 0;
    en-uk =1;
    en-gb =2;
    en-au =3;
    en-us =4;
    fil-en =5;
    en-in =6;
    fr =7;

}

解决方法

根据 proto3 语言规范,标识符(包括枚举)必须以字母开头,然后包含字母、十进制数字和下划线。

ident = 字母 { 字母 |小数位 | “_”}

以下是 google 开发者风格指南建议的枚举。虽然样式指南在技术上不是强制性的,但在大多数情况下您应该注意遵守命名约定,除非您有令人信服的理由背离它们。

对枚举类型名称使用 camelcase(首字母大写),对值名称使用 capitals_with_underscores:

enum FooBar {
  FOO_BAR_UNSPECIFIED = 0;
  FOO_BAR_FIRST_VALUE = 1;
  FOO_BAR_SECOND_VALUE = 2;
}

以上是.proto 文件中的枚举变量是否必须大写?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:stackoverflow.com。如有侵权,请联系admin@php.cn删除