Bonsoir,
En résumé, j'ai une classe dans un .hpp :
et dans le .cpp correspondant, j'essaye d'écrire le code suivant (c'est comme ça que je faisais d'habitude pour les paramètres statiques non template) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 template <class T> class A { static T t; static void initialise(T& the_T); [...etc] };
Dans un 2eme fichier source je tente d'appeler cette fameuse fonction d'initialisation, mais j'obtiens alors une erreur lors de l'édition de liens (T == Fonctions ici) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 template<class T> T A<T>::t ; // là, ça compile // ..avec : template <class T> void A<T>::initialise(T& the_T) { // ça compile aussi A<T>::t = the_T; }
Qu'ai-je oublié ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 undefined reference to `A<Fonctions>::initialise(Fonctions&)'
Merci d'avance !
Partager