Predecir la salida del siguiente programa C++
#include<iostream> using namespace std; class Test { private: int x; int y; public: Test(int x = 0, int y = 0) { this->x = x; this->y = y; } static void fun1() { cout << "Inside fun1()"; } static void fun2() { cout << "Inside fun2()"; this->fun1(); } }; int main() { Test obj; obj.fun2(); return 0; }
(A) Dentro de fun2() Dentro de fun1()
(B) Dentro de fun2()
(C) Dentro de fun1() Dentro de fun2()
(D) Error del compilador
Respuesta: (D)
Explicación: Hay un error en fun2(). Es una función estática e intenta acceder a este puntero.
este puntero no está disponible para las funciones de miembro estático, ya que se puede llamar a la función de miembro estático sin ningún objeto.
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA