什么是运算符`| =`?我怎样才能在C#中实现它?

时间:2011-03-30 21:35:14

标签: c# c++ operators

下面的C ++代码是做什么的?更具体地说,什么是运算符|=

long liFaultFlags = 0;

for (int i = 0; i < FAULTCOUNT; i++)
{
    if (faults[i] == true)
    {
        liFaultFlags |= (1 << i);
    }
}

return liFaultFlags;

如何在C#中实现?

2 个答案:

答案 0 :(得分:14)

这是bitwise OR operator,相当于

liFaultFlags = liFaultFlags | (1<<i);

您可以在C#中以完全相同的方式编写该行。

答案 1 :(得分:8)

operator |=按位进行OR并将赋值转换为一个(非常类似+ =进行整数加法和赋值)。

在C#中完全相同。