10
我很好奇C++中内建的bool
类型的一些行为。据我了解,std::common_type
决定使用隐式可转换性的通用类型。我期望bool
和另一种类型的表达式会导致bool转换为该类型。例如,我可以看到bool + float
→float
和bool + double
→double
。但是,bool + int8_t
→int32_t
和bool + int16_t
→int32_t
。为什么会这样?为什么在C++中bool和int8_t的常见类型是int32_t?
谢谢俞灏!那很棒。你知道这个标准在哪里提到吗? – user2333829
@ user2333829 *§4.5积分促销* –
谢谢,你回答了我的问题!我觉得很奇怪,但很显然。 – user2333829