[C con Clase] Problema con Clase.
Zaka Elab
shanatorio en gmail.com
Mie Dic 10 19:22:33 CET 2008
He obtenido la respuesta por otros medios, y os la voy a dejar por aquí:
#include <iostream>
class A{
};
**************************
Aquí he añadido la inicialización de *a a NULL.
class B{
private:
A *a;
public:
B(A *a);
};
B::B(A *a):a(NULL){
this->a = a;
}
*************************
Aquí he añadido la inicialización tanto de *a como b también
a NULL. La cuestión es que en el código original b no tenía
un constructor por defecto, por lo que el compilador intentaba
usarlo al inicializar el valor de sus atributos y daba error.
Por lo que hay que usar explícitamente el constructor que yo
he implementado.
class C{
A *a;
B b;
C();
};
C::C():a(NULL),b(NULL){
this->a = new A;
B(this->a);
}
Gracias Programante por tu respuesta, aunque me gustaría usar
otra solución para el mismo problema, lo que no se si es posible.
Iré comentando mis dudas a medida que tenga más claro lo que hago.
Muchas gracias.
Zaka.
Más información sobre la lista de distribución Cconclase