如何编写C ++浮点文字?

时间:2018-07-05 10:08:38

标签: c++ literals

resultfloat,我可以用以下三种方式进行编码:

  • if (result < 0)
  • if (result < 0.)
  • if (result < 0.f)

据我了解,

  • 0隐式为int
  • 0.隐式为double
  • 0.ffloat

我更喜欢使用第一种方法,因为它很清楚而且很简单,但是我是否通过使用它来强制进行类型转换?

1 个答案:

答案 0 :(得分:6)

从概念上讲,是可以进行转换的。

但是您应该将这样的微观考虑交给编译器,并写出最清晰的对我来说是

if (result < 0)

如果有任何疑问,请检查生成的程序集(使用https://gcc.godbolt.org/非常容易)。

最后,当决定在float上使用double时,请考虑double or float, which is faster?