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

时间:2017-07-20 23:42:43

标签: c++ types casting comparison

我可以在C ++中直接使用比较作为整数吗?

例如,我可以这样做吗?

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

理论上,这会将 var 增加到10。 我知道它适用于Python。

1 个答案:

答案 0 :(得分:1)

是的,C ++从bool隐式转换为int

但是,我建议你更明确一点,这是你的实际意图,以便未来的读者了解你的意图。首先将它显式地转换为int。

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