Buenas a todos, estoy implementando un Arbol binario de busqueda (template) y tengo problemas el constructor copy y con el operator =
Ya sabeis k C++ no los tiene implementados y k con estructuras dinamicas eso produce errores.
Os pongo un esquema del arbol binario para que entendais la nomenclatura:
class ArbolBB{
private:
struct Nodo{
T info;
ArbolBB<T> *hijoIzq;
ArbolBB<T> *hijoDcho;
Nodo(): hijoIzq(0),hijoDcho(0){}
~Nodo(){
if (hijoIzq != 0){
delete hijoIzq;
}
if (hijoDcho != 0){
delete hijoDcho;
}
}
};
Nodo *raiz;
};
Bueno pues mi problema es el clasico de las copias. Cuando el programa necesita hacer cualquier copia del arbol o parte de él, este no realiza verdaderas copias sino k mantiene referencias al original y luego las elimina destruyendo mi arbol y todas las consecuencias...bla bla
Creo k se me entiende.
He implementado unos operadores = y constructor copia xo no consigo k funcionen bien. No se si voy bien encaminado(en otras estructuras lo hice asi pero eran de otros tipos).
Os las copio y a ver si me podeis orientar si estan muy mal o corregir los errores:
//
YA LO HE CONSEGUIDO, GRACIAS POR LEERLO