Tu coinces peut-être à ce niveau là. On ne fait pas de .cpp avec un template. Il faut considérer un .c ou .cpp comme une unité de code compilable, éventuellement en récupérant du code d'une autre fichier (.h). Un template n'est pas destiné à être compilé ; il sert à générer du code à la volée qui, lui, sera compilé, quand un template est instancié.
Un template doit être entièrement défini dans un .h, c'est un code qui ne sert qu'à être utilisé dans un autre fichier, un template n'existe pas en lui même, il n'a de sens qu'une fois associé à une classe.
Si ton template contient beaucoup de code, tu peux vouloir respecter un principe de séparation en-tête/code, à la manière des .h/.cpp. Normalement il te faut déclarer l'en-tête dans un .h et le corps des méthodes dans un autre fichier, avec l'extension de ton choix (.cxx et .tpp ont l'air assez populaires), fichier que tu incluras ensuite à la fin du .h, mais malheureusement à chaque fois que j'ai voulu essayer un truc de ce genre, ça a abominablement planté, impossible de trouver la bonne syntaxe.
Partager