C++Punteros a los miembros


Sintaxis

  • Suponiendo una clase llamada Clase ...

    • type * ptr = & Class :: member; // Solo para miembros estáticos
    • tipo Class :: * ptr = & Class :: member; // Apunta a miembros de la clase no estáticos
  • Para los punteros a miembros de clase no estáticos, dadas las siguientes dos definiciones:

    • Instancia de clase;
    • Clase * p = & instancia;
  • Punteros a las variables miembro de la clase

    • ptr = & Class :: i; // Punto a la variable i dentro de cada clase
    • instancia. * ptr = 1; // Acceso a la instancia de i
    • p -> * ptr = 1; // acceso p's i
  • Punteros a funciones de miembro de clase

    • ptr = & Class :: F; // Punto a la función 'F' dentro de cada clase
    • (instancia. * ptr) (5); // Llamar a la instancia de F
    • (p -> * ptr) (6); // Llamar p's F

Punteros a los miembros Ejemplos relacionados