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

long liFaultFlags = 0;

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

return liFaultFlags;

这将如何在 C# 中实现?

最佳答案

它是 bitwise OR operator 并且等价于

liFaultFlags = liFaultFlags | (1<<i);

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

关于c# - 什么是运算符 `|=` ?我如何在 C# 中实现它?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5492747/

10-08 22:44