我在 C++ 中使用逻辑 OR 运算符时遇到问题。问题来了,如果左侧为真,则不计算右侧表达式。我有两个双端队列,我需要在一段时间内从它们中弹出左端,但是如果我可以从第一个双端队列弹出,我不会从第二个双端队列弹出,因为 OR 运算符没有对其进行评估。我该如何克服这个问题。这是一段代码:
while( D.popLeft( k ) || E.popLeft( m ) )
{
if( k < m )
{
C.pushRight( k );
E.pushLeft( m );
}
else
{
C.pushRight( m );
D.pushLeft( k );
}
}