Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème d'encapsulation de classes

Sujet résolu
    6 août 2008 à 20:26:43

    Salut ! =).

    Je rencontre actuellement un problème avec deux classes...

    j'ai une classe "World" definie dans "world.h" qui contient un objet de type "Script" defini dans "script.h".. Jusqu'a la, tout va bien.
    Sauf que ma classe "Script" contient un pointeur vers un objet de type World ! ...

    Resultat, ça compile pas, vu qu'a cause de mon ifdef il ne connais pas World.

    /home/sam101/Code/Tlow/script.h|10|erreur: «World» has not been declared|
    /home/sam101/Code/Tlow/script.h|17|erreur: ISO C++ forbids declaration of «World» with no type|
    /home/sam101/Code/Tlow/script.h|17|erreur: expected «;» before «*» token|
    ||=== Build finished: 3 errors, 0 warnings ===|
    • Partager sur Facebook
    • Partager sur Twitter
      6 août 2008 à 20:34:48

      Forward declaration...

      Ajoute class World; avant la déclaration de ta classe Script dans script.h, et ne met le include que dans le .cpp de script.
      • Partager sur Facebook
      • Partager sur Twitter

      Problème d'encapsulation de classes

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown