#include <iostream> using namespace std; class Point { int x, y; public: Point(int i = 0, int j = 0) { x = i; y = j; } int getX() { return x; } int getY() { return y; } }; int main() { Point p1; Point p2 = p1; cout << "x = " << p2.getX() << " y = " << p2.getY(); return 0; }
(A) Error del compilador
(B) x = 0 y = 0
(C) x = valor basura y = valor basura
Respuesta: (B)
Explicación: el compilador crea un constructor de copia si no escribimos el nuestro. El compilador lo escribe incluso si hemos escrito otros constructores en clase. Así que el programa anterior funciona bien. Dado que tenemos argumentos predeterminados, los valores asignados a x e y son 0 y 0.
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