表記 | 名前または意味 | 項 | 種別 | 優先順位 | 結合規則 | 解説 | 備考 |
---|---|---|---|---|---|---|---|
:: | スコープ解決 | なし | その他 | 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 | → | なにもしません。 |