メンバー アクセス演算子:
構文
postfix-expression=
postfix-expression
.
template
選ぶid-expression
postfix-expression
->
template
選ぶid-expression
解説
メンバー アクセス演算子 . および -> は、struct、union、および class 型のメンバーを参照するために使用されます。 メンバー アクセス式は、選択したメンバーの値と型を持ちます。
メンバー アクセス式には、次の 2 つの形式があります。
最初の形式では、
postfix-expressionによってstruct、class、またはunion型の値が表され、id-expressionによって、指定されたstruct、union、またはclassのメンバーの名前が示されます。 操作の値はid-expressionの値となります。postfix-expressionが左辺値の場合は左辺値となります。2 番目の形式では、
postfix-expressionによってstruct、union、またはclassを指すポインターが表され、id-expressionによって、指定されたstruct、union、またはclassのメンバーの名前が示されます。 値はid-expressionの値であり、左辺値です。->演算子は、ポインターを逆参照します。 したがって、式e->memberと(*(e)).member(eがポインターを表す) は、同一の結果になります (演算子->または*をオーバーロードする場合を除く)。
例
次の例に、メンバー アクセス演算子の両方の形式を示します。
// expre_Selection_Operator.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
struct Date {
Date(int i, int j, int k) : day(i), month(j), year(k){}
int month;
int day;
int year;
};
int main() {
Date mydate(1,1,1900);
mydate.month = 2;
cout << mydate.month << "/" << mydate.day
<< "/" << mydate.year << endl;
Date *mydate2 = new Date(1,1,2000);
mydate2->month = 2;
cout << mydate2->month << "/" << mydate2->day
<< "/" << mydate2->year << endl;
delete mydate2;
}
2/1/1900
2/1/2000