C++ メンバ演算子
.(ドット)演算子と ->(アロー)演算子は、クラス、構造体、共用体のメンバを参照するために使用されます。
ドット演算子は実際のオブジェクトに適用されます。アロー演算子はオブジェクトを指すポインタと一緒に使用されます。例えば、次の構造体があるとします。
struct Employee {
char first_name[16];
int age;
} emp;
(.)ドット演算子
次のコードは、値 "zara" をオブジェクト emp のfirst_nameメンバに代入します:
strcpy(emp.first_name, "zara");
(->)アロー演算子
p_emp が Employee 型のオブジェクトを指すポインタである場合、値 "zara" をオブジェクト emp のfirst_nameメンバに代入するには、次のようなコードを記述する必要があります:
strcpy(p_emp->first_name, "zara");
-> はアロー演算子と呼ばれ、マイナス記号と大なり記号で構成されています。
要するに、構造体のメンバにアクセスするときはドット演算子を使用し、ポインタを介して構造体のメンバにアクセスするときはアロー演算子を使用します。
その他の拡張
C++ 演算子