【发布时间】:2013-09-17 13:20:22
【问题描述】:
有没有类似的:if((bitmap & BIT_WATER) && (bitmap & BIT_FIRE)) bitmap &= ~BIT_FIRE
或if(bitmap & BIT_WATER) bitmap &= ~BIT_FIRE
在仅使用按位运算的单个语句中,不需要比较 (if)?
我的意思是,如果两个完全相反的标志被设置为明确的一个。
【问题讨论】:
-
bitmap &= ~(bit_fire * static_cast<bool>(bitmap & bit_water));,但它使用乘法...
标签: c++ optimization bit-manipulation