C++ 运算符x++;;和++;x;对于int,哪个更快?为什么?
可能重复:C++ 运算符x++;;和++;x;对于int,哪个更快?为什么?,c++,increment,C++,Increment,可能重复: 他们说++i更快,但我不明白为什么。有人能给我看一下这些运算符的汇编代码吗?这取决于编译器和情况,如果它为这个表达式生成更快的代码。++i肯定和i++一样快,但是可能会更快。 原因是执行 为了实现i++,实现需要生成i的临时副本,这与++i的实现不同 但是,智能编译器可以优化这种临时类型的类型,它们对POD类型肯定会这样做。请参见此处:除了alread提到的引用和之外,这已经被问过很多次了。对于int类型,在大多数情况下不会有任何区别。总是使用prefix++是一个好习惯,除非有很
他们说
++i
更快,但我不明白为什么。有人能给我看一下这些运算符的汇编代码吗?这取决于编译器和情况,如果它为这个表达式生成更快的代码。
++i
肯定和i++
一样快,但是可能会更快。原因是执行 为了实现
i++
,实现需要生成i
的临时副本,这与++i
的实现不同
但是,智能编译器可以优化这种临时类型的类型,它们对POD类型肯定会这样做。请参见此处:除了alread提到的引用和之外,这已经被问过很多次了。对于
int
类型,在大多数情况下不会有任何区别。总是使用prefix++是一个好习惯,除非有很好的理由不使用,无论是什么类型。这是因为对于其他一些类型,prefix++可以快得多。