<P>[Flags]<BR>public enum PCState<BR>{<BR> None=1,Normal=2,Special=4,InQueue=8<BR>}<BR>有一个该类型的变量 state,它的值如下</P> <P>PCState state=PCState.Normal|PCState.InQueue</P> <P>现在我想将其状态替换为PCState.Special|PCState.InQueue,如果再次给state赋值,我当然是会啦,我这里的意图是,判断state是否有PCState.Normal,如果有将原来state中的PCState.Normal删除,再将PCState.InQueue加入到原来的state变量中</P> <P>就是说PCState.Normal和PCState.InQueue是两个互斥的状态,不能同时存在于一个state变量中</P>
2 回答
冉冉说
TA贡献1877条经验 获得超1个赞
重新赋值不就把PCState.Normal删除了吗?没看明白你想做什么?我觉的你的目的就是不想Normal和InQueue同时存在,不是吗? if (state == (PCState.Normal | PCState.InQueue)) { state = PCState.Special | PCState.InQueue; } 或者 if (state == (PCState.Normal | PCState.InQueue)) { state = PCState.InQueue; } 不能这样写?
- 2 回答
- 0 关注
- 596 浏览
添加回答
举报
0/150
提交
取消