Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 运算符x++;;和++;x;对于int,哪个更快?为什么?_C++_Increment - Fatal编程技术网

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++可以快得多。