我已经读到由于性能原因(在某些情况下),我应该避免使用后缀增量运算符。
但这不影响代码的可读性吗?在我看来:
for(int i = 0; i < 42; i++);
/* i will never equal 42! */
看起来比:
for(int i = 0; i < 42; ++i);
/* i will never equal 42! */
但这可能只是出于习惯。诚然,我没有看到很多用处++i。
在这种情况下,性能是否牺牲了可读性?还是我只是盲目的,++i可读性比i++?
++i并且i++在某些情况下做不同的事情,不要假设它们是相同的。
for (type i = 0; i != 42; ++i)。不仅可以operator++被重载,但是这样能operator!=和operator<。前缀增量不比后缀贵,不等于不比小于贵。我们应该使用哪个?
i++在不知道会影响性能的情况下使用过++i,所以我切换了。刚开始时,后者看上去确实有些奇怪,但是过了一会儿我就习惯了,现在感觉就像i++。