什么','在语法中意味着什么?

时间:2014-02-01 12:55:11

标签: c++ if-statement

我正在寻找一些例子,我不知道这意味着什么:

if(FileExistsA("File.ext"), false)
{
     ....
}

有人可以解释一下吗?

1 个答案:

答案 0 :(得分:7)

在C和C ++中(但不是C#或Java),the comma operator','计算左右表达式,但只返回正确的表达式。

在这个例子中:

bool x = (true, false);
// x == false

bool y = (false, false, true)
// y == true

在您的情况下,if( FileExistsA("File.ext"), false )将永远不会跟随其分支,因为逗号运算符确保false是结果。

更新我忘记了=,的优先顺序。我将上面的表达式包装在括号中,以防止表达式被评估为(bool x = true), false === false