読み方 : ドットえんざんし
ドット演算子【dot operator】
概要

オブジェクト指向言語の多くでは、「obj.prop」のように記述することで、objオブジェクトが持つpropというプロパティにアクセスできる。値を変数として読み出すだけでなく、「obj.prop=1」のように代入することも可能で、可能な操作は言語や対象によって異なる。
「obj.meth()」のように記述すれば、objオブジェクトに定義されたmethというメソッドを呼び出せる。個々のオブジェクトに留まらず、クラスそのものに属する静的なメンバーにアクセスする際にも使われ、「Math.PI」のようにクラス変数を参照したり、「Math.round()」のようにクラスメソッドを呼び出したりすることができる。
C言語などでは、構造体や共用体のメンバーへのアクセスにもドット演算子が用いられ、「struct.member」のように記述する。PythonやJavaScript、Java、C#などでは、モジュールや名前空間の階層をたどる際にもドットで区切る記法が使われる。
一方、ポインタ経由でメンバーにアクセスする場合は、別の記法が用いられることが多い。C言語やC++言語では「ptr->member」のようにアロー演算子「->」が使われ、ドット演算子と使い分ける。PerlやPHPでもオブジェクトのメンバーへのアクセスにはアロー演算子が用いられ、ドット演算子は専ら文字列結合のために使われる。近年の言語では、値が存在しない可能性を考慮した安全なアクセスのため、「?.」のような派生構文が導入される例もある。
(2026.6.26更新)