我有一个“鼠标阅读器”类,它可以将旋转转换为 x、y、z。 (这是一种第一人称相机)但我不想让这个人直视他的轴,所以我这样做了:
if (!(Altitude + MouseCoordChange[1] > 269) && !(Altitude + MouseCoordChange[1] < 91))
{
我计算了检查结果,它很完美,它可以防止你上下太多,但有时,它会低于 91 和 269,这怎么可能?
谢谢
最佳答案
你犯规了 De Morgen's Law
换句话说:
!A && !B = !(A || B)
我怀疑你想要的是:
if (!((Altitude + MouseCoordChange[1] > 269) ||
(Altitude + MouseCoordChange[1] < 91)))
{
或者更清楚:
if ((Altitude + MouseCoordChange[1] <= 269) &&
(Altitude + MouseCoordChange[1] >= 91)))
{
关于C++ 简单 if 语句不检查?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12767166/