Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/08/2008, 21:35
yackcae
 
Fecha de Ingreso: junio-2008
Mensajes: 63
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: Problemas con patrón de diseño Visitante...

Creo que se debe a que las clases no están bien ordenadas
Primero debes declarar la clase visitante porque la estás llamando en la clase TGato
Código:
//Clase abstracta del visitante
class TReaccion{
public:
virtual void visit(class TGato*)=0; // en este caso TGato es un apuntador no se necesita conocer como está estructurada la clase para crear un apuntador, solo se debe indicar que es un apuntador a una clase.
};

class TAnimal{ //Clase abstracta del elemento.
public:
virtual void Accept(TReaccion&)=0;
};

//Interfaz Clase hija
class TGato : public TAnimal{ //Clase hija de TAnimal
public:
TGato();
virtual void Accept(TReaccion&); // Aquí se usa la clase TReaccion y se debe conocer como está declarada, por eso la clase TReaccion debe estar declarada antes que la clase TGato.
};