IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

patron de classe


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 230
    Par défaut patron de classe
    Voila, je veux créer une classe conteneur générique et je déclare donc la classe dans un fichier d'en-tête (.h) puis je la définit dans un fichier .cpp.
    Le problème, c'est que dans le programme, le lien vers les méthodes de la classe ne se font pas alors que si je fait un copier coller et que je définit les méthodes dans le fichier d'en-tête, tout marche.
    D'où ca peut venir ?

    Pour ceux qui veulent voir le code, le voici en simplifier :


    Conteneur.h

    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
    #ifndef CONTENEUR_H
    #define CONTENEUR_H
     
     
    template<class U>
    struct Liste
    {
    	U *Item;
    	Liste<U> *Next;
    };
     
    template<class T>
    class Conteneur
    {
    private:
    	Liste<T> *m_pFirst;
    	int m_iNb;
     
    public:
    	Conteneur();
    	virtual ~Conteneur();
    };
     
     
    #endif // CONTENEUR_H

    Conteneur.cpp

    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
    #include "Conteneur.h"
     
    template<class T>
    Conteneur<T>::Conteneur()
    {
    	m_pFirst = NULL;
    	m_iNb = 0;
    }
     
    template<class T>
    Conteneur<T>::~Conteneur()
    {
    	// Destruction de tous les objets
    	Liste<T> *Temp, *Temp2;
     
    	Temp = m_pFirst;
     
    	while (Temp != NULL)
    	{
    		Temp2 = Temp->Next;
    		delete Temp->Item;
    		delete Temp;
    		Temp = Temp2;
    	}
    }
    Merci de votre aide.

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 230
    Par défaut
    Ah merci, j'avais regardé dans la faq mais j'étais passé à côté, j'y ferais plus attention la prochaine fois.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Patron de classe et identification du type du parametre
    Par frankgoestohollywood dans le forum Langage
    Réponses: 1
    Dernier message: 17/01/2011, 18h09
  2. Réponses: 12
    Dernier message: 29/10/2008, 08h40
  3. Réponses: 4
    Dernier message: 27/10/2008, 17h53
  4. [Template] Patron de classe
    Par houcem001 dans le forum C++
    Réponses: 8
    Dernier message: 27/10/2008, 14h29
  5. Dériver un patron de classe à partir du patron ?
    Par Serge Iovleff dans le forum C++
    Réponses: 4
    Dernier message: 07/01/2005, 15h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo