De l'objet et du c++ pour un debutant

Signaler
Messages postés
53
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
20 octobre 2005
-
Messages postés
53
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
20 octobre 2005
-
salut tout le monde, je debute en c++ objet, et j'ai un petit probleme:
j'ai un projet qui utilise des objets, mais dans les fichiers headers que j'ai créé, les objets ne sont pas reconnus. en clair, mes objets ne sont pas en global!
je les avais d'abord placé dans le main.cpp, puis dans un fichier que j'ai appelé Objet.h, j'y ai mis d'abord les classes, puis les constructeurs et enfin les fonctions et procédures des classes (bref tout), mais rien y fait...
j'ai surement du oublier quelque chose de bidon, mais je vois pas quoi... si quelqu'un peut m'aider, je lui en serait reconnaissant

merci d'avance!

2 réponses

Messages postés
402
Date d'inscription
samedi 28 décembre 2002
Statut
Membre
Dernière intervention
21 juillet 2005
1
je comprend pas tout à fait la question mais bon je vais essayer :)

par exemple voici un exemple de Classes.h:

#ifndef CLASSES_H
#define CLASSES_H

class CUtilities
{
    public :
        CUtilities( );
        ~CUtilities( );

    // ...
};

class CPersonnes
{
    public : 
        // Cree une nouvelles personne dans la base de donee
        CPersonnes( );
        ~CPersonnes( );
    
        int iAge, iCodePostal;
        string strNom, strVille, strPays

        // ...
};
#endif


et ensuite tu dois encore créer un fichier Classes.cpp qu implémente les fonctions de tes classes, et pour les objets tu n'as pas besoin de créer un fichier spécial, pourquoi est-ce que tu as besoin d'objet global? si tu les veux global tu peux simplement les déclarer dans le fichier Classes.h tout en dessous alors comme ca:

// Declaration des classes...

CUtilities *cUtilitiesObjet;
CPersonnes *cPersonnesObjet;
// ....


et alors tu peux les utiliser dans ton main mais en général on déclare les objets dans les fonctions, à part pour les structures c'est souvent en dehors aussi mais bien sur tu peux le faire, je ne vois pas pourquoi on ne pourrais pas utilise de fichier Objet.h mais il ne faut alors pas oublier de l'inclure dans le fichier qui compte utiliser les objets !!! :)

Allez, bonne chance ;)

Ciao ;)

[DmX]
Messages postés
53
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
20 octobre 2005

Merci de ta reponse, tu me fais remarquer que je me suis tres mal exprimé!!! en effet, ce ne sont pas les objets que je veux mettre dans un fichier *.h, mais les classes, ce qui constitue une grosse erreur de ma part!

pour le reste, j'aimerais en fait pouvoir utiliser mes classes et les objets instantiés dans mon fichier main.cpp, mais aussi dans les fichiers d'entete que j'ai créé

le projet que je crée est en fait un pong tout simple en opengl, et je conserve les coordonnées de chacun dans un objet. et comme l'affichage se fait dans le fichier display.h, il faudrait que je puisse utiliser les fonctions getX, getY et autres que j'ai ecrites (c'est ce que je voulais dire par global).

il faudrait donc, d'apres toi que je place les declarations de classes dans le fichier classes.h et les constructeurs, destructeurs et fonctions/procedures dans classes.cpp? et évidemment preciser #include "classes.h" dans main.cpp. je viens de le faire, mais ça ne fonctionne pas, j'ai du oublier un truc...

en tout cas, merci de ton aide!