Salut!
J'ai comme un léger problème avec une classe...
Je voudrais pouvoir gêrer un cas particulier d'une méthode template...
- J'ai essayé de la déclarer dans le corps de ma classe, le compilateur a levé une erreur de namespace... J'en ai déduit que le prototype de ma méthode template sert aussi pour les spécialisations...
- J'ai ensuite séparé le code en 3 fichiers, un pour les méthodes non génériques, un pour les templates, inclus en fin de mon .h et le .h...
En définitive, j'obtient un couple d'erreurs de redéfinition de la fonction spécialisée... Le problème est que la ligne de la première erreur "multiple definition of..." est la même que la ligne de la seconde "first defined here"
Cependant, la source diffère... La première vient du fichier lui-même .cpp, la seconde vient du .o de ce fichier...
Un peu comme si la définition de la template générique, se définissait pour tous les types sans tenir compte des spécialisations...
Pourriez-vous m'aider? J'utilise Code::Blocks
Partager