代码之家  ›  专栏  ›  技术社区  ›  InFamous X

为什么“static_cast<int>(uint32_t)”会意外工作?[副本]

  •  0
  • InFamous X  · 技术社区  · 6 年前

    我想知道什么时候该投。在C++中,当添加、乘法等时,隐式类型转换规则是什么?

    int + float = ?
    int * float = ?
    float * int = ?
    int / float = ?
    float / int = ?
    int / int = ?
    int ^ float = ?
    

    等等……

    表达式将始终作为更精确的类型计算吗?Java的规则不同吗? 如果我把这个问题说得不准确,请纠正我。

    0 回复  |  直到 14 年前