c++的運算子十分豐富,使得c++的運算十分靈活方便。例如把賦值號(=)也作為運算子處理,這樣,a=b=c=4就是合法的表示式,這是與其他語言不同的。c++提供了以下運算子:
算術運算子
+(加) -(減) *(乘) /(除) %(整除求餘) ++(自加) --(自減)
關係運算子
>(大於) <(小於) ==(等於) >=(大於或等於) <=(小於或等於) !=(不等於)
邏輯運算子
&&(邏輯與) ||(邏輯或) !(邏輯非)
位運算子
<<(按位左移) >>(按位右移) &(按位與) |(按位或) ^(按位異或) ~(按位取反)
賦值運算子 (=及其擴充套件賦值運算子)
條件運算子 (?:)
逗號運算子 (,)
指標運算子 (*)
引用運算子和位址運算子 (&)
求位元組數運算子(sizeof)
強制型別轉換運算子( (型別) 或型別( ))
成員運算子 (.)
指向成員的運算子 (->)
下標運算子 ([ ])
其他 (如函式呼叫運算子())
25 和 運算子
運算子 運算子用於在預處理期將巨集引數轉換為字串 的轉換作用是在預處理期完成的,因此只在巨集定義中有效 編譯器不知道 的轉換作用 用法 define string x x printf s n string hello world 工程中 運算子的使用 define call f,p printf ...
C 運算子過載賦值運算子
自定義類的賦值運算子過載函式的作用與內建賦值運算子的作用類似,但是要要注意的是,它與拷貝建構函式與析構函式一樣,要注意深拷貝淺拷貝的問題,在沒有深拷貝淺拷貝的情況下,如果沒有指定預設的賦值運算子過載函式,那麼系統將會自動提供乙個賦值運算子過載函式。賦值運算子過載函式的定義與其它運算子過載函式的定義是...
C 運算子過載轉換運算子
為什麼需要轉換運算子?大家知道對於內建型別的資料我們可以通過強制轉換符的使用來轉換資料,例如 int 2.1f 自定義類也是型別,那麼自定義類的物件在很多情況下也需要支援此操作,c 提供了轉換運算子過載函式 它使得自定義類物件的強轉換成為可能。轉換運算子的生命方式比較特別,方法如下 operator...