Share via


二項演算子

次の表はオーバーロードできる演算子の一覧を示します。

二項演算子 Redefinable

[演算子]

名前

,

コンマ

!=

非等値

%

剰余

%=

剰余と割り当て

&

ビットごとの AND

&&

論理 AND

&=

ビットごとの AND/assignment

*

乗算

*=

乗算と割り当て

+

加算

+=

加算と割り当て

減算

–=

減算と割り当て

– >

メンバー選択

– >*

メンバーへのポインターの選択

/

除算

/=

除算と割り当て

<

より小さい

<<

左シフト

<<=

左シフトと割り当て

<=

以下

=

代入

==

等価比較

>

より大きい

>=

以上

>>

右シフト

>>=

右シフトと割り当て

^

排他的 OR

^=

[OR/assignment

|

ビットごとの包括的 OR

|=

ビットごとの包括的 OR/assignment

||

論理 OR

非静的メンバーとして二項演算子関数を宣言するにはフォーム内で宣言する必要があります :

浸水型 演算子 op**(**arg )

浸水型と 戻り値の型であればop は上の表に示す演算子の 1 つです arg は任意の型の引数です。

グローバル関数として二項演算子関数を宣言するにはフォーム内で宣言する必要があります :

浸水型 演算子 op**(**arg1arg2 )

浸水型 と op と arg1 と arg2 メンバー演算子関数で説明されているように対し引数です。引数の少なくとも 1 つがクラス型である必要があります。

[!メモ]

二項演算子の戻り値の型に関する制限はありません ; ただしほとんどのユーザー定義の二項演算子はクラス型にクラス型または参照を返します。

参照

関連項目

演算子のオーバーロード