代入演算子

提供: RAD Studio
移動先: 案内検索

二項演算子:インデックス への移動

構文

単項式  代入演算子 代入式


解説

代入演算子は次のとおりです。

=    *=     /=     %=    +=    -=
<<=  >>=    &=     ^=    |=

= は単純代入演算子であり,これ以外は複合代入演算子です。

E1 = E2 という式において,E1 は変更可能な左辺値でなければなりません。代入式それ自体は左辺値ではありません。

次の式は,

E1 op= E2

次の式と同じ効果を持ちます。

E1 = E1 op E2

ただし,左辺値 E1 は一度だけしか評価されません (たとえば,E1 += E2 は,E1 = E1 + E2 と同じです)。

式の値は,式が評価された後の E1 の値になります。

単純代入演算子および複合代入演算子のどちらの場合でも,オペランド E1 および E2 は以下の規則のいずれか 1 つに従わなければなりません。

  1. E1 が限定子の付いた,あるいは付かない算術型で,E2 が算術型
  2. E1 が,E2 の型に互換の限定子付きあるいは限定子なしの構造体型または共用体型
  3. E1E2 は限定子付きあるいは限定子なしの互換型を指すポインタで,左辺の式が指す型は,右辺の式が指す型の限定子をすべて持つ
  4. E1E2 の一方がオブジェクトあるいは不完全型を指すポインタで,もう一方が限定子付きあるいは限定子なしの void へのポインタ。左辺の式が指す型は,右辺の式が指す型の限定子をすべて持つ
  5. E1 がポインタで E2 がヌルポインタ定数

メモ: 複合演算子の間にスペース(+<スペース>=)を入れるとエラーが発生します。

メモ: プロパティと一緒に使うときには,代入演算子がサポートされない場合があります。