这些速度是否相同?
return someNumber / sizeof(myStruct); // Pretend sizeof returns 88 always.
和
return someNumber / 88;
我不确定编译器是否每次都计算sizeof或写一个常量(从而使我可以安全地包含sizeof()而不是常量)。
答案 0 :(得分:8)
是。编译器在编译时知道sizeof(myStruct)
,并用适当的常量替换它。
对于C ++中的sizeof
表达式,这总是如此。
注意:这意味着,例如,sizeof(a++)
不会增加a
。