I don't see how that would do anything. The comma operator is basically just used to create an evaluation list in a statement. For instance in a for statement, you could do:
This would do as you expected. Assign 0 to i and 10 to j and loop incrementing i and decrementing j until i => j.
for(i = 0, j = 10; i < j; ++i, --j)
The comma operator, I believe returns the result. Which, unless you put it somewhere, gets discarded. In the case of your statement above, it should act no differently than
You can test it yourself
if(int1 | int2 | int3 == int4)
I could be wrong, though. There might be something else going on there that I'm not seeing. I don't think so, though.
if((1,2) == 3)
std::cout << "if((1,2) == 3) is True!";
if((1,2,3) == 3)
std::cout << "if((1,2,3) == 3) is True!";
if((1,2,3,4) == 3)
std::cout << "if((1,2,3,4) == 3) is True!";