在位操作方面,我是 C++ 的新手和完整的新手(我只知道基础知识),并且我正在从事一个项目,我需要将文档的状态保留在位域中。
简而言之:我想在无条件删除 flag2 的同时保留 flag1 的最后状态。我现在拥有的是这样的:
位域 |= flag1; 位域 &= ~flag2;
问题是:有没有办法在一个语句中执行它?
就我而言,我真的不能像这样切换它们:
位域 ^= (flag1|flag2)
这是显而易见的答案,但问题是有时设置了标志1,有时未设置,我想保留它,因为我在删除标志2时从最后一个函数调用中收到它。
谢谢你的帮助!