I came across this strange code snippet which compiles fine:
class Car { public: int speed; }; int main() { int Car::*pSpeed = &Car::speed;
Just to add some use cases for @anon's & @Oktalist's answer, here's a great reading material about pointer-to-member-function and pointer-to-member-data.
https://www.dre.vanderbilt.edu/~schmidt/PDF/C++-ptmf4.pdf