5

我刚刚注意到您可以在 C# 中创建类似这样的内容:

enum TestEnum
{
  First = 1,
  Second = 1,
  Third = 2
}

[TestMethod]
public void Test()
{
  TestEnum test = TestEnum.First;
  var en = (TestEnum) 1;//And en is now set to First
}

我们希望枚举值是唯一的。现在,我编写了一个单元测试来检查每个值在我们的枚举中只使用一次。有没有更好的方法来强制唯一性?

4

1 回答 1

5

枚举用于赋予整数意义。当您说 Second = 1 时,这没有意义,但请考虑这样的示例:

enum HumanEnum
{
    Man = 1,
    Woman = 0,
    Lady = 0,
    Boy = 1,
    Girl = 0
}

假设 0 和 1 代表性别,这样 Man 和 Boy 具有相同的性别值。

于 2013-07-09T13:39:24.690 回答