Duda sobre constructor copia en C++
Publicado por BluSky (28 intervenciones) el 22/07/2003 14:13:17
Tengo una duda a ver si me podeis explicar el por qué (no lo entiendo):
del siguiente código, que representa en C++ la implementación de polinomios de tercer grado heredando una clase polinomio de 2º grado:
class polinomio2
{
int a, b, c;
public:
...........
}
class polinomio3: public polinomio2
{
int d;
public:
polinomio3(const polinomio3 &p): polinomio2(p) {d=p.d;}
}
La duda la tengo en el constructor copia del polinomio3. En él, estoy llamando al constructor (¿copia?) del polinomio2 y le estoy pasando por parámetros ¡¡un polinomio de tercer grado!! y el compilador no dice nada. ¿Alguien puede explicarme por qué?. Se supone que si llamo al constructor del polinomio2, le pase un polinomio de 2º grado; no de tercero.
Muchas gracias por adelantado
del siguiente código, que representa en C++ la implementación de polinomios de tercer grado heredando una clase polinomio de 2º grado:
class polinomio2
{
int a, b, c;
public:
...........
}
class polinomio3: public polinomio2
{
int d;
public:
polinomio3(const polinomio3 &p): polinomio2(p) {d=p.d;}
}
La duda la tengo en el constructor copia del polinomio3. En él, estoy llamando al constructor (¿copia?) del polinomio2 y le estoy pasando por parámetros ¡¡un polinomio de tercer grado!! y el compilador no dice nada. ¿Alguien puede explicarme por qué?. Se supone que si llamo al constructor del polinomio2, le pase un polinomio de 2º grado; no de tercero.
Muchas gracias por adelantado
Valora esta pregunta


0