どの C++ コンパイラでも (bool)true == (int)1 と想定できますか? [重複] 質問する

どの C++ コンパイラでも (bool)true == (int)1 と想定できますか? [重複] 質問する

(bool)true == (int)1どの C++ コンパイラでも想定できますか?

ベストアンサー1

はい。キャストは冗長です。あなたの表現では:

true == 1

整数昇格が適用され、bool 値は an に昇格されint、この昇格の結果は 1 になる必要があります。

参考: 4.7 [conv.integral] / 4: ソース タイプがbool...の場合、 true1 に変換されます。

おすすめ記事