Il est possible de gérer des variables pointeurs sur des membres de classe. Une notation spécifique leur est réservée :
class x {
public:
x(int i=0) : a(i) {}
int a ;
char fonction(const int i) ;
...
} ;
int main(void) {*
x varX ;
int x::*pi = &x::a ;
char (x::*pf) (int) = & x::fonction ;
cout << "acces au membre a :" << varX.*pi ;
cout << "Appel de la fonction membre, argument 2 : "
<< (varX.*pf)(2) << endl ;