C++運算符優先級


C++運算符優先級,是描述在計算機運算計算表達式時執行運算的先後順序。 先執行具有較高優先級的運算,然後執行較低優先級的運算。 例如,我們常說的先執行相乘和除,再執行加減運算。

C++運算符優先級表,從上到下,從左到右,優先級依次減弱。
優先級 運算符 說明 結合性
1 :: 範圍解析 自左向右
2 ++  -- 後綴自增/後綴自減
() 括號
[] 數組下標
. 成員選擇(對象)
−> 成員選擇(指針)
3 ++  -- 前綴自增/前綴自減 自右向左
+  − 加/減
!  ~ 邏輯非/按位取反
(type) 強製類型轉換
* 取指針指向的值
& 某某的地址
sizeof 某某的大小
new,new[] 動態內存分配/動態數組內存分配
delete,delete[] 動態內存釋放/動態數組內存釋放
4 .*  ->* 成員對象選擇/成員指針選擇 自左向右
5 *  /   % 乘法/除法/取余
6 +  − 加號/減號
7 <<  >> 位左移/位右移
8 <  <= 小於/小於等於
>  >= 大於/大於等於
9 ==  != 等於/不等於
10 & 按位與
11 ^ 按位異或
12 | 按位或
13 && 與運算
14 || 或運算
15 ?: 三目運算符 自右向左
16 = 賦值
+=  −= 相加後賦值/相減後賦值
*=  /=   %= 相乘後賦值/相除後賦值/取余後賦值
<<=  >>= 位左移賦值/位右移賦值
&=  ^=  |= 位與運算後賦值/位異或運算後賦值/位或運算後賦值
17 throw 拋出異常
18 , 逗號 自左向右