メンバーへのポインター (AKA ドットスターまたはアロースター) を使用してクラスメンバーにアクセスする場合、次の構文を使用できます。
A * pa;
int A::*ptm2 = &A::n;
std::cout << "pa->*ptm: " << pa->*ptm << '\n';
&A::n私の質問は、ステートメントがどのように機能するかです。
上記の例nでは変数です。メンバー変数の代わりにn関数があった場合 (そして、メンバーへのポインターの代わりにメンバー関数へのポインターを定義した場合)、クラスの関数は事実上静的である可能性があるため ( Nemo のコメント) を介して、クラスの関数のアドレスを見つけることができました&A::some_function。しかし、クラス スコープの解決を通じて非静的クラス メンバーのアドレスを取得するにはどうすればよいでしょうか。&A::n出力が単に であるため、の値を出力すると、これはさらに混乱します1。