Dan*_*e36 -1 c++ bit-manipulation bitwise-operators
在 C++ 中开发 ECS 实现时,我渴望可以简化这个表达式,但老实说,我对按位运算没有足够的信心来弄清楚:
(x & y) == x
如果您有任何关于简化按位表达式的提示,那就太好了,谢谢
编辑:格式化
Jak*_*ark 5
!(x & ~y)会给你同样的结果。然而,如果这是一个“简化”版本,我将其留给读者。如果您有一个不错的 C++ 编译器,请考虑不要在此类东西上浪费时间。无论如何,编译器都会找出最有效的机器代码。可读的代码应该是主要目标。
!(x & ~y)
作为一个例子,在这里你可以看到一个众所周知的编译器(在本例中为 clang)将把 和 编译(x & y) == x成!(x & ~y)相同的代码。
归档时间:
2 年,9 月 前
查看次数:
130 次
最近记录: