Bonjour,
Je suis débutant en C++ et je suis confronté à quelques problèmes / questions :
Je m'entraine en travaillant sur un projet de jeu-vidéo et son architecture.
Après avoir réfléchis à pas mal de chose, je passe à la pratique, voici donc l'architecture retenu ( Je me suis aidé du tutoriel sur l'architecture d'un jeu-vidéo et de quelques projets trouvés sur internet ) :
Premier problème :
Si je souhaite crée un objet de type bloc j'obtient l'erreur :J'ai conclu donc que le compilo n'aime pas la façon avec laquelle j'inclus mes fichiers :error: field `bloc' has incomplete type
Object.hpp
Et la classe qui en dérive :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 /* --------------------------------------------------------------------- (c) Hybrix 2007 The standard object. --------------------------------------------------------------------- */ #ifndef H_OBJECT #define H_OBJECT #include <iostream> #include "../math/Vector.hpp" // For physic engine class Bloc; class Object { public: // Constructor / Destructor. Object(); ~Object(); private: Bloc bloc; }; #endif
Bloc.hpp
J'ai testé différentes façon pour éviter l'erreur, mais aucune ne fonctionnes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 /* --------------------------------------------------------------------- (c) Hybrix 2007 The standard object. --------------------------------------------------------------------- */ #ifndef H_BLOC #define H_BLOC #include <iostream> #include "../Object.hpp" class Bloc : public Object { public: // Constructor / Destructor. Bloc(); ~Bloc(); // Move or apply physic on the bloc. Vector m_vector; }; #endif
La classe "Objects" me permet à la base de "rassembler"tous les objets ( la classe n'est pas complète, je fait seulement les bases pour le moment ).
Second problème :
Je vous en fait part dès que le premier sera résolu.
Merci d'avoir pris le temps de me lire.
Hybrix.
Partager