【发布时间】:2014-10-08 17:58:35
【问题描述】:
例如:
if ((rand() % 100) < 50)
string value = "123";
else
int value = 123;
编译器是否知道 value 可以有两种可能的类型?这在内部是如何表示的?
【问题讨论】:
-
它没有。任何计算为零的都是假的,其他的都是真的。
-
juanchopanza,必须在运行时评估的条件呢?
-
他们得到评估,如果他们不是 0,他们就是真的。
-
谷歌
programming scope
标签: c++ gcc types compilation