【发布时间】:2021-03-08 10:50:47
【问题描述】:
假设我有这个协议缓冲区架构:
message Person{
enum Height{
UNDEFINED = 0;
TALL = 1;
SHORT = 2;
}
HEIGHT Height = 1;
}
是否可以有一个空字符串 ("") 而不是 UNDEFINED ?
【问题讨论】:
假设我有这个协议缓冲区架构:
message Person{
enum Height{
UNDEFINED = 0;
TALL = 1;
SHORT = 2;
}
HEIGHT Height = 1;
}
是否可以有一个空字符串 ("") 而不是 UNDEFINED ?
【问题讨论】:
不,不是。枚举名称用于在大多数(所有?)语言中生成成员,并且该成员通常是标识符,因此需要名称。由于在某些语言(C++、cough)中如何为多个枚举定义成员解析,您可能还希望在名称前加上前缀,以便您可以拥有多个 UNDEFINED。
我个人更关心“高”、“矮”或“未定义”的高度选项的模棱两可、过载和限制。
【讨论】: