C++是一門電腦編程語言,G++不是語言,是一款編譯器中編譯C++程式的命令而已。 不同的編譯器,會對代碼做出一些不同的優化 比如說: a++; 和 ++a; 如果從標準C的角度去理解。a++這個語句等同於 a = a + 1 也就是說,我是先調用,再自增。在調用過程中,會申請一個新的數據地址,用 ...
C++是一門電腦編程語言,G++不是語言,是一款編譯器中編譯C++程式的命令而已。
不同的編譯器,會對代碼做出一些不同的優化
比如說: a++; 和 ++a;
如果從標準C的角度去理解。a++這個語句等同於 a = a + 1
也就是說,我是先調用,再自增。在調用過程中,會申請一個新的數據地址,用於存放臨時的變數a',然後在把a'加1,之後在把a'賦值給a。
但是++a這個語句不需要這麼麻煩。因為他是先自增,後調用,也就是省去了申請新地址的功夫.
如果你使用gcc來編譯,結果你會發現前++與後++二者基本上沒有差異。