| 表記 | 名前または意味 | 項 | 種別 | 優先順位 | 結合規則 | 解説 | 備考 |
|---|---|---|---|---|---|---|---|
| :: | スコープ解決 | なし | その他 | 17 | なし | 目標の所属を明示します。 | C++のみ。 |
| () | 関数呼び出し | なし | その他 | 16 | → | 目標の関数を呼び出します。 | |
| () | 変換 | なし | その他 | 16 | なし | 式を目標の型に変換します。 | C++のみ。 |
| [] | 配列添字参照 | なし | その他 | 16 | → | 目標の配列の指定された番号の要素になります。 | |
| -> | 構造体ポインタ参照 | なし | その他 | 16 | → | 目標の構造体またはクラスのポインタを参照します。 | |
| . | 構造体メンバ選択 | なし | その他 | 16 | → | 目標の構造体またはクラスを参照します。 | |
| ++ | 後置インクリメント | 単項 | 算術 | 16 | なし | 目標の変数に1加算を行います。 | 加算は次回変数使用時に反映 |
| -- | 後置デクリメント | 単項 | 算術 | 16 | なし | 目標の変数に1減算を行います。 | 減算は次回変数使用時に反映 |
| typeid | 型名 | なし | その他 | 16 | なし | 目標の型名を返します。 | C++のみ。 |
| const_cast | const変更型キャスト | なし | その他 | 16 | なし | 目標のconst属性を変更します。 | C++のみ。 |
| dynamic_cast | 実行時型チェックキャスト | なし | その他 | 16 | なし | 目標を指定型に変換可能か実行時に確認して変換。 | C++のみ。 |
| static_cast | 通常型キャスト | なし | その他 | 16 | なし | 目標を指定型に変換可能かコンパイル時に確認して変換。 | C++のみ。 |
| reinterpret_cast | 無条件型キャスト | なし | その他 | 16 | なし | 目標を無条件に変換。 | C++のみ。 |
| ++ | 前置インクリメント | 単項 | 算術 | 15 | なし | 目標の変数に1加算を行います。 | |
| -- | 前置デクリメント | 単項 | 算術 | 15 | なし | 目標の変数に1減算を行います。 | |
| ~ | NOT(補数) | 単項 | ビット | 15 | なし | 目標のビットを全反転した値になります。 | |
| ! | 論理NOT(反転) | 単項 | 論理 | 15 | なし | 目標の真と偽を反転した値になります。 | |
| + | 単項プラス | 単項 | 算術 | 15 | なし | 効果不明です。多分何もしないのではないかと思いますが・・・ | |
| - | 算術否定 | 単項 | 算術 | 15 | なし | 目標の正負を逆転した値になります。 | |
| * | ポインタ参照 | 単項 | その他 | 15 | なし | 目標のポインタの指す先の変数になります。 | |
| & | アドレス取得 | 単項 | その他 | 15 | なし | 目標のアドレスを取得します。 | |
| new | オブジェクト作成 | なし | その他 | 15 | なし | 指定した型のオブジェクトに必要なメモリを確保し、構築します。 | C++のみ。 |
| delete | オブジェクト破棄 | なし | その他 | 15 | なし | newで確保したオブジェクトを破棄し、メモリを解放します。 | C++のみ。 |
| delete[] | オブジェクト破棄 | なし | その他 | 15 | なし | newで確保したオブジェクトの配列を破棄し、メモリを解放します。 | C++のみ。 |
| sizeof | サイズ取得 | 単項 | その他 | 15 | なし | 目標の型のサイズまたは変数が使用しているサイズになります。 | |
| () | 型キャスト | なし | その他 | 15 | ← | 目標を指定型に変換します。 | |
| .* | メンバポインタ | なし | その他 | 14 | → | クラスメンバへのポインタを参照します。 | C++のみ。 |
| ->* | メンバポインタ | なし | その他 | 14 | → | クラスメンバへのポインタを参照します。 | C++のみ。 |
| * | 乗算 | 二項 | 算術 | 13 | → | 左右の乗算(掛け算)の結果になります。 | |
| / | 除算 | 二項 | 算術 | 13 | → | 左右の除算(割り算)の結果になります。 | |
| % | 剰余 | 二項 | 算術 | 13 | → | 左右の剰余(余りを求める)の結果になります。 | 整数型のみ。 |
| + | 加算 | 二項 | 算術 | 12 | → | 左右の加算(足し算)の結果になります。 | |
| - | 減算 | 二項 | 算術 | 12 | → | 左右の減算(引き算)の結果になります。 | |
| << | 左シフト | 二項 | ビット | 11 | → | 左辺のビットを右辺分左にずらした結果になります。 | 左に溢れたものは消えます。 なくなった右部分は0が補完されます。 |
| >> | 右シフト | 二項 | ビット | 11 | → | 左辺のビットを右辺分右にずらした結果になります。 | 右に溢れたものは消えます。 なくなった左部分がどうなるかはコンパイラによります。 |
| < | より小さい | 二項 | 論理 | 10 | → | 左辺が右辺より小さい時、真になります。 | |
| > | より大きい | 二項 | 論理 | 10 | → | 左辺が右辺より大きい時、真になります。 | |
| <= | 以下 | 二項 | 論理 | 10 | → | 左辺が右辺以下の時、真になります。 | |
| >= | 以上 | 二項 | 論理 | 10 | → | 左辺が右辺以上の時、真になります。 | |
| == | 等価 | 二項 | 論理 | 9 | → | 左辺と右辺が等しい時、真になります。 | |
| != | 以外 | 二項 | 論理 | 9 | → | 左辺が右辺以外の時、真になります。 | |
| & | AND(論理積) | 二項 | ビット | 8 | → | 左右のビット毎のAND(両方1の時1)の結果になります。 | |
| ^ | XOR(排他的論理和) | 二項 | ビット | 7 | → | 左右のビット毎のXOR(片方が1の時1)の結果になります。 | |
| | | OR(論理和) | 二項 | ビット | 6 | → | 左右のビット毎のOR(片方または両方が1の時1)の結果になります。 | |
| && | 論理AND | 二項 | 論理 | 5 | → | 左右が両方真の時、真になります。 | |
| || | 論理OR | 二項 | 論理 | 4 | → | 左右の片方または両方が真の時、真になります。 | |
| ? : | 条件 | 三項 | その他 | 3 | ← | 左の条件が真の時、中央を、偽の時、右の記述になります。 | 唯一の三項演算子。 |
| = | 代入 | 二項 | 算術 | 2 | ← | 右辺の内容を左辺に代入します。 | |
| *= | 乗算代入 | 二項 | 算術 | 2 | ← | 右辺の内容で左辺を乗算します。 | |
| /= | 除算代入 | 二項 | 算術 | 2 | ← | 右辺の内容で左辺を除算します。 | |
| %= | 剰余代入 | 二項 | 算術 | 2 | ← | 右辺の内容で左辺を剰余します。 | 整数型のみ。 |
| += | 加算代入 | 二項 | 算術 | 2 | ← | 右辺の内容で左辺を加算します。 | |
| -= | 減算代入 | 二項 | 算術 | 2 | ← | 右辺の内容で左辺を減算します。 | |
| <<= | 左シフト代入 | 二項 | ビット | 2 | ← | 右辺の内容で左辺を左シフトします。 | |
| >>= | 右シフト代入 | 二項 | ビット | 2 | ← | 右辺の内容で左辺を右シフトします。 | |
| &= | AND代入 | 二項 | ビット | 2 | ← | 右辺の内容で左辺をANDします。 | |
| |= | OR代入 | 二項 | ビット | 2 | ← | 右辺の内容で左辺をORします。 | |
| ^= | XOR代入 | 二項 | ビット | 2 | ← | 右辺の内容で左辺をXORします。 | |
| throw | 例外投入 | なし | その他 | 1 | なし | 例外を投入します。 | C++のみ。 |
| , | カンマ | 二項 | その他 | 0 | → | なにもしません。 |