所以我遇到了这段代码:
[Flags]
public enum Options
{
NA = 0,
OptionA = 1,
OptionB = 2,
OptionC = 4
}
现在,从技术上讲,“NA”是无效的,如果用户不想选择任何选项,他们就不会选择任何选项,它将保存到可为空的 int。没有“无”选项。但是,任何时候用户选择选项 AC,NA 也总是会被添加。如果我改变NA = 1
,那么OptionC = 8
,一切正常。那部分是有道理的。但是,如果 NA 将始终包含在用户的选项列表中,NA = 0
为什么?
编辑:
为了澄清一些事情,NA是独占的,但是如果我在哪里选择OptionB,那么当我查看选定的选项时,它会显示我选择了NA和OptionB。