我可以将比较结果用作C++的整数吗?

Can I use the result of a comparison as an integer in C++?

本文关键字:整数 C++ 比较 结果 我可以      更新时间:2023-10-16

我可以直接将比较用作C++中的整数吗?

例如,我可以这样做吗?

int var = 0;
for (i=0;i<20;i++){
var += (int)(var < 10);
}

理论上,这会将var增加到 10 的值。 我知道它在Python中工作。

是的,C++具有从boolint的隐式转换。

但是,我建议你更清楚地表明这是你的真实意图,以便未来的读者理解你的意图。首先将其显式转换为 int。

int var = 0;
for (i = 0; i < 20; i++) {
var += (int)(var < 10);
}