浮点型强制是否总是产生与static_cast相同的结果?

时间:2019-04-23 12:01:02

标签: c++

亲爱的stackoverflowers,

是否有某种保证将浮点类型强制为“更宽泛的”类型,总是能产生与执行static_cast相同的结果?

这里有个例子:

float f = <any float>;
double a = f;
double b = static_cast<double>(f);

// does this always hold?
EXPECT_TRUE(a==b);

感谢您提供信息。

1 个答案:

答案 0 :(得分:4)

  

浮点型强制是否总是产生与static_cast相同的结果?

看来,按强制类型,您指的是隐式转换。答案是肯定的:如果存在从一种类型到另一种类型的隐式转换,则静态强制转换会执行相同的转换。