在C ++中,这段代码意味着什么?

时间:2011-10-15 14:38:10

标签: c++

我正在处理链接列表并找到了一个示例。在那个样本中它说

while (currNode && index > currIndex)

所以这里,什么是currNode的布尔值?

5 个答案:

答案 0 :(得分:6)

这很可能意味着currNode != NULL

C++中,所有内容都不是0(因此包括所有不是NULL的内容)在布尔上下文中被视为true

答案 1 :(得分:1)

如果currNode不是指向NULL的指针,则currNode为true。

答案 2 :(得分:1)

此代码的含义与此类似(在伪C ++中)

while (/* if currNode is integer type */
       currNode != NULL &&
       /* if operator int() is defined */
       currNode.(operator int()) != 0 && 
       /* if operator bool() is defined */
       currNode.(operator bool()) != false && 
       /* or some other defined cast operators */
       index > currIndex)

答案 3 :(得分:0)

检查currNode是否为空

while(currNode !=NULL && index > currIndex)

答案 4 :(得分:0)

当currNode为!= 0且currNode小于索引

时执行某些操作