若是有表達式 a = i++ 它等價於 a = i ; i = i + 1;優化
若是有表達式 a = ++i 它等價於 i = i + 1; a = i;指針
- 首先二者的區別是:前者是先賦值,而後再自增;後者是先自增,後賦值;
- ++i和i++都是分兩步完成的。由於++i 是後面一步才賦值的,因此它可以看成一個變量進行級聯賦值,++i = a =b;
- ++i 和i++ 的使用,通常來講在循環域裏面,這二者並無什麼很大的區別,由於編譯器通常都會給你作優化。可是要注意其生存週期,以及很難察覺的寫髒,就好像指針delete之後必定要賦予0同樣,咱們要注意i值在程序流中的變化;