E0081

未匹配的标注

用于判别的值重复

错误代码示例:

enum Enum {
    P = 3,
    X = 3, // error!
    Y = 5,
}

枚举判别值用于区分存储在内存中的枚举变量。该错误表明相同值被用于两个或多个变量,因此无法区分它们。


enum Enum {
    P,
    X = 3, // ok!
    Y = 5,
}

请注意,没有手动指定判别值的变量默认是从0开始往下编号的,所以可能会与看似无关的变量发生冲突。


enum Bad {
    X,
    Y = 0, // error!
}

Y 之前 X 的判别值(因为没有手动指定)已经被指定为 0 ,所以会发生冲突。

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
上一篇 下一篇
贡献者:1
讨论数量: 0
发起讨论 只看当前版本


暂无话题~