Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/01/2013, 08:54
fightmx
 
Fecha de Ingreso: febrero-2003
Ubicación: D.F.
Mensajes: 163
Antigüedad: 21 años, 2 meses
Puntos: 22
Respuesta: error: forward declaration of 'class Foo' en template

Define tu método fuera de la clase y después de la declaración de Engine para que el compilador entienda como está compuesto un Engine.

Mal

Código C++:
Ver original
  1. struct A;
  2.  
  3. struct B{
  4.     A *ptr;
  5.     void load(){
  6.         ptr->g;
  7.     }
  8. };
  9.  
  10. struct A{
  11.     int g;
  12. };
  13.  
  14. int main(){
  15.     B b;
  16.     b.load();
  17.     return 0;
  18. }

Bien
Código C++:
Ver original
  1. struct A;
  2.  
  3. struct B{
  4.     A *ptr;
  5.     void load();
  6. };
  7.  
  8. struct A{
  9.     int g;
  10. };
  11.  
  12. inline void B::load(){
  13.     ptr->g;
  14. }
  15.  
  16. int main(){
  17.     B b;
  18.     b.load();
  19.     return 0;
  20. }