C++ 中的“&”和“>>”数字运算符?
"&" and ">>" number operator in C++?
我正在尝试在 Javascript 中制作一个 raycaster 游戏,为此,我正在关注 this tutorial,它是用 C++ 编写的。
我的问题源于试图将以下两行转换为 javascript:
int tx = (int)(texWidth * (floorX - cellX)) & (texWidth - 1);
color = (color >> 1) & 8355711; // make a bit darker
我不知道这两行中的“&”和“>>”是什么意思。 Javascript中是否有等价物?
>>
是右移位运算符,&
是按位与运算符,它们都在JavaScript
中可用
代码直接转换为 JS,删除了 (int) 类型转换并将 int 替换为 let/var/const。
let tx = (texWidth * (floorX - cellX)) & (texWidth - 1);
color = (color >> 1) & 8355711; // make a bit darker
&
是bitwise and,>>
是bitshift right,解释的很好here.
我正在尝试在 Javascript 中制作一个 raycaster 游戏,为此,我正在关注 this tutorial,它是用 C++ 编写的。
我的问题源于试图将以下两行转换为 javascript:
int tx = (int)(texWidth * (floorX - cellX)) & (texWidth - 1);
color = (color >> 1) & 8355711; // make a bit darker
我不知道这两行中的“&”和“>>”是什么意思。 Javascript中是否有等价物?
>>
是右移位运算符,&
是按位与运算符,它们都在JavaScript
代码直接转换为 JS,删除了 (int) 类型转换并将 int 替换为 let/var/const。
let tx = (texWidth * (floorX - cellX)) & (texWidth - 1);
color = (color >> 1) & 8355711; // make a bit darker
&
是bitwise and,>>
是bitshift right,解释的很好here.