“|=”是什么意思
What does "|=" mean
上下文:
private bool AllowMoveEventProcessing(float time)
{
bool allow = Input.GetButtonDown (m_HorizontalAxis);
allow |= Input.GetButtonDown (m_VerticalAxis);
allow |= (time > m_NextAction);
return allow;
}
发现于:
http://answers.unity3d.com/questions/782423/unity-46-ui-restrict-eventsystem-only-to-keyboard.html
非常感谢!
该运算符执行按位或运算并将结果分配回 allow
。相当于:
bool allow = Input.GetButtonDown(m_HorizontalAxis);
allow = allow | Input.GetButtonDown(m_VerticalAxis);
allow = allow | (time > m_NextAction);
return allow;
老实说,它没有任何意义,并且会执行不必要的工作,因为操作不会短路。理解起来会容易得多(当然,除非代码依赖于方法调用的副作用 运行 这也是糟糕的设计):
return Input.GetButtonDown(m_HorizontalAxis) ||
Input.GetButtonDown(m_VerticalAxis) ||
time > m_NextAction;
该运算符是按位或。
按位或采用两个长度相等的位模式,并对每对对应位执行逻辑包含或运算。如果第一位为 1 或第二位为 1 或两位都为 1,则每个位置的结果为 1;否则,结果为 0.
上下文:
private bool AllowMoveEventProcessing(float time)
{
bool allow = Input.GetButtonDown (m_HorizontalAxis);
allow |= Input.GetButtonDown (m_VerticalAxis);
allow |= (time > m_NextAction);
return allow;
}
发现于: http://answers.unity3d.com/questions/782423/unity-46-ui-restrict-eventsystem-only-to-keyboard.html
非常感谢!
该运算符执行按位或运算并将结果分配回 allow
。相当于:
bool allow = Input.GetButtonDown(m_HorizontalAxis);
allow = allow | Input.GetButtonDown(m_VerticalAxis);
allow = allow | (time > m_NextAction);
return allow;
老实说,它没有任何意义,并且会执行不必要的工作,因为操作不会短路。理解起来会容易得多(当然,除非代码依赖于方法调用的副作用 运行 这也是糟糕的设计):
return Input.GetButtonDown(m_HorizontalAxis) ||
Input.GetButtonDown(m_VerticalAxis) ||
time > m_NextAction;
该运算符是按位或。
按位或采用两个长度相等的位模式,并对每对对应位执行逻辑包含或运算。如果第一位为 1 或第二位为 1 或两位都为 1,则每个位置的结果为 1;否则,结果为 0.