++i的效率高些,++i在运算过程中不产生临时对象,返回的就是i,是个左值,类似++i=1这样的表达式是合法的,而i++在运算的过程中会产生临时对象,返回的是零时对象的值,是个右值,像i++=1这样的表达式是非法的对于内置类型,单独的i++和++i语句,现在的编译器基本上都会优化成++i,所以就没什么区别. 考虑内建数据类型时,它们的效率差别不大(去除编译器优化的影响).所以在这种情况下我们大可不必关心.现在让我们再考虑自定义数据类型(主要是指类)的情况.此时我们不需要再做很多汇编代码的分析了,…