English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

在C ++中通过NULL类指针调用类方法

Se puede usar un puntero de clase nulo para llamar a métodos de clase.

Nota– Esto es un comportamiento no definido, no se puede garantizar la ejecución del programa. El resultado real depende del compilador utilizado.

El programa que muestra este proceso es el siguiente.

Ejemplo

#include <iostream>
using namespace std;
class Example {
   public :
   void func() {
      cout << "Llamar a esta función a través de un puntero de clase nulo.";
   }
};
int main() {
   Ejemplo *p = NULL;
   p->func();
   return 0;
}

Resultado de la salida

El resultado de la salida del programa anterior es el siguiente.

Llamar a esta función a través de un puntero de clase nulo

Ahora, permítanos entender el programa anterior.

La clase Example contiene un miembro de funciónfunc(). Esta función muestra "Esta función se llama a través de un puntero de clase nulo.". A continuación se muestra el fragmento de código proporcionado.

class Example {
   public :
   void func() {
      cout << "Llamar a esta función a través de un puntero de clase nulo.";
   }
};

en esta funciónmain()creará un puntero de clase nulo p. Luegofunc()Usar p para la llamada. A continuación se muestra el fragmento de código proporcionado.

int main() {
   Ejemplo *p = NULL;
   p->func();
   return 0;
}