小编Win*_*int的帖子

将一些位移代码从C++转换为C#

我正在尝试将枚举从C++代码转换为C#代码,而我无法绕过它.C++代码是:

enum FOO {
  FOO_1 = 0,
  FOO_2,
  // etc
 }

#define MASK(x)  ((1 << 16) | (x))

enum DISP
{
  DISP_1 = MASK(FOO_1),
  DISP_2 = MASK(FOO_2),
  // etc
}
Run Code Online (Sandbox Code Playgroud)

我不明白的是MASK正在做什么,以及我如何模拟C#中的功能,或者了解它正在做什么,并在没有它的情况下手动设置枚举DISP.

我不确定我说的是有道理的,但是当我不完全确定我在看什么时,这是可以预料的.

c# c++ bit-shift

6
推荐指数
2
解决办法
495
查看次数

标签 统计

bit-shift ×1

c# ×1

c++ ×1