此处,类似的问题被问到C#
:
Are arithmetic operations on literals in C# evaluated at compile time?,
和java
:
Are arithmetic operations on literals calculated at compile time or run time?
考虑到C ++,是否会在运行或编译时评估以下计算?第一个是定义内置类型,第二个是函数参数。
然而,请考虑它们用于所有4种基本算术运算以及其他内置类型,例如: int
代替double
以下。
double testDouble = 2.0 + 2.0;
aUserDefinedType testUserDefinedTypeObject
(
aMemberVariable*std::pow(someOtherVariable, 1.0/8.0)
);
答案 0 :(得分:5)