Acceso a las funciones miembro de puntero en C ++

C ++ class | El acceso a la función miembro de puntero : Aquí, vamos a aprender cómo acceder a una función miembro utilizando el puntero en C ++ ?

Crear un class junto con funciones miembro de datos y miembro y luego acceder a las funciones miembro mediante el uso de un puntero en C ++.

¿Cómo acceder a una función miembro de puntero?

Para el acceso a una función miembro de puntero , tenemos que declarar un puntero al objeto e inicializarlo (mediante la creación de la memoria en tiempo de ejecución, sí! Nos puede utilizar nueva teclado class esto).

El segundo paso, el operador de uso flecha -> para acceder a la función de miembro usando el puntero al objeto.

Sintaxis:

//pointer to object declaration
class_name *pointe_name;
//memory initialization at runtime
pointer_name = new class_name;
//accessing member function by using arrow operator
pointer_name->member_function();

Ejemplo:

En el siguiente ejemplo – hay una class llamado Número con for miembro de datos num y funciones miembro class númeroEntrada () , DisplayNumber () .

En el ejemplo, estamos creando objeto simple N y un puntero al objeto PTRN y acceder a las funciones miembro mediante el uso de objeto simple N y el puntero al objeto PTRN .

Programa:

#include <iostream>
using namespace std;
class Number
{
private:
int num;
public:
//constructor
Number(){ num=0; };
//member function to get input
void inputNumber (void)
{
cout<<"Enter an integer number: ";
cin>>num;
}
//member function to display number
void displayNumber()
{
cout<<"Num: "<<num<<endl;
}
};
//Main function
int main()
{
//declaring object to the class number
Number N;
//input and display number using norn object
N.inputNumber();
N.displayNumber();
//declaring pointer to the object
Number *ptrN;
ptrN = new Number; //creating & assigning memory
//printing default value
cout<<"Default value... "<<endl;
//calling member function with pointer
ptrN->displayNumber();
//input values and print
ptrN->inputNumber();
ptrN->displayNumber();
return 0;
}

salida

Enter an integer number: 10
Num: 10
Default value...
Num: 0
Enter an integer number: 20
Num: 20

Explicación:

El class tres necesidades pasos que se entienden aquellos son:

  1. Puntero a la creación de objetos: Número * PTRN;
  2. de memoria dinámica de inicialización al objeto de puntero: PTRN = Número nueva;
  3. Acceso función miembro mediante el uso de “Flecha operador” : ptrN-> DisplayNumber ();


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *