Partage
  • Partager sur Facebook
  • Partager sur Twitter

erreur avec l'héritage de templates paramétrés

Sujet résolu
    20 juin 2007 à 14:55:24

    résolu grâce à ce lien


    bonjour,
    pour mon projet je crée des classes héritant d'une classe template paramétrée, mais j'ai droit à ces erreurs :
    ------ Début de la génération : Configuration : Debug Win32 ------
    Édition des liens en cours...
    ImageManager.obj : error LNK2019: symbole externe non résolu "protected: __thiscall IRessourceManager<struct SDL_Surface *>::IRessourceManager<struct SDL_Surface *>(void)" (??0?$IRessourceManager@PAUSDL_Surface@@@@IAE@XZ) référencé dans la fonction "public: __thiscall ImageManager::ImageManager(void)" (??0ImageManager@@QAE@XZ)
    ImageManager.obj : error LNK2019: symbole externe non résolu "protected: __thiscall IRessourceManager<struct SDL_Surface *>::~IRessourceManager<struct SDL_Surface *>(void)" (??1?$IRessourceManager@PAUSDL_Surface@@@@IAE@XZ) référencé dans la fonction "public: __thiscall ImageManager::~ImageManager(void)" (??1ImageManager@@QAE@XZ)
    SoundManager.obj : error LNK2019: symbole externe non résolu "protected: __thiscall IRessourceManager<struct FSOUND_STREAM *>::IRessourceManager<struct FSOUND_STREAM *>(void)" (??0?$IRessourceManager@PAUFSOUND_STREAM@@@@IAE@XZ) référencé dans la fonction "public: __thiscall SoundManager::SoundManager(void)" (??0SoundManager@@QAE@XZ)
    SoundManager.obj : error LNK2019: symbole externe non résolu "protected: __thiscall IRessourceManager<struct FSOUND_STREAM *>::~IRessourceManager<struct FSOUND_STREAM *>(void)" (??1?$IRessourceManager@PAUFSOUND_STREAM@@@@IAE@XZ) référencé dans la fonction "public: __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@QAE@XZ)
    fatal error LNK1120: 4 externes non résolus
    5 erreur(s), 0 avertissement(s)
    ========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========


    voilà une partie du code en question :
    ma classe de base :
    template<typename T>
    class IRessourceManager
    {
    };

    ma classe fille :
    class ImageManager : public IRessourceManager<SDL_Surface *>
    {
    };


    pour le moment il n'y a que les constructeur/destructeur et ils sont vides (voilà pourquoi je n'ai pas mis plus de code).

    J'ai fait un test pour voir si l'erreur viendrait pas du fait que le paramètre est une structure C, mais avec std::string l'erreur reste ?

    merci
    ++
    • Partager sur Facebook
    • Partager sur Twitter

    erreur avec l'héritage de templates paramétrés

    × 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