【发布时间】:2017-06-01 07:08:11
【问题描述】:
S++或S=S+1,可以推荐将值加1,为什么?
我认为S++ 应该是首选,因为它在内部是单机器指令 (INC)。如果我错了,请纠正我。其他方式我认为两者都是相同的,除了 ++ 是一元的,并且两者的后增量和运算符重载不同。
C# 有什么不同吗?
【问题讨论】:
-
别忘了
S+=1 -
以上都不是。如果您想将一个值增加
1并且不关心之前的值,请使用++S。 -
老实说,我只在
for循环中使用++运算符,在几乎任何其他情况下都使用+=运算符(在这两种语言中,即使我主要使用C#)。在几乎每个应用程序中,这都不会成为瓶颈,所以我不关心这种“优化”。但我确实关心可读性。 -
为什么?因为这些是您想要传达的精确语义。
-
@PaulF:调试器在调试版本中使用时最有价值。调试版本通常禁用优化,因此您不会看到最终发布的代码。此外,您应该首先优化可读性,并处理性能、何时何地很重要。
标签: c# c++ c++11 visual-c++