This question already has answers here:
How to prevent duplicate values in enum?
(5个答案)
Non-unique enum values
(8个答案)
7年前关闭。
我只是注意到您可以在C#中创建如下代码:
我们希望枚举值是唯一的。现在,我编写了一个单元测试,检查每个值在我们的枚举中仅使用一次。有没有更好的方法来强制唯一性?
假设0和1代表性别,因此Man和Boy具有相同的性别值。
(5个答案)
Non-unique enum values
(8个答案)
7年前关闭。
我只是注意到您可以在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
}
我们希望枚举值是唯一的。现在,我编写了一个单元测试,检查每个值在我们的枚举中仅使用一次。有没有更好的方法来强制唯一性?
最佳答案
好的枚举用于赋予整数含义。当您说Second = 1时,这没什么意义,但请考虑一个类似的示例:
enum HumanEnum
{
Man = 1,
Woman = 0,
Lady = 0,
Boy = 1,
Girl = 0
}
假设0和1代表性别,因此Man和Boy具有相同的性别值。
10-04 18:51