Messages d'erreur lors du link d'un package C++Builder 6.0 (unresolved ref...) [Résolu]

Messages postés
237
Date d'inscription
mardi 13 novembre 2007
Statut
Membre
Dernière intervention
21 novembre 2013
- - Dernière réponse : blueperfect
Messages postés
237
Date d'inscription
mardi 13 novembre 2007
Statut
Membre
Dernière intervention
21 novembre 2013
- 25 janv. 2011 à 15:06
J'ai écris une librairie C++ utilisant des templates, et je l'ai compilé dans un package...pas d'erreurs, ni de warnings...

Mais lorsque j'utilise l'une de mes classes du package, le linker m'hurle:

Unresolved reference....

Que faire ?

blueperfect
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
3821
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
28 août 2019
85
3
Merci
librairie => bibliothèque.

Un template n'est pas du code, mais un générateur de code. C'est du code virtuelle qui n'est même pas existant si tu ne t'en sers pas. Donc, tu ne peux pas mettre de template dans une bibliothèque. On livre généralement les .hh/.hpp et .hxx. Regarde boost par exemple, la plupart de leurs bibliothèques tiens dans des headers seulement.

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 141 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cptpingu
Messages postés
180
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
16 août 2012
2
0
Merci
Tu devrais poster une partie de ton code et le message d'erreur.
Commenter la réponse de cs_Lucky92
Messages postés
237
Date d'inscription
mardi 13 novembre 2007
Statut
Membre
Dernière intervention
21 novembre 2013
0
Merci
@Lucky92
>>Tu devrais poster une partie de ton code et le message d'erreur
j'y songe...

@CptPingu
>>Donc, tu ne peux pas mettre de template dans une bibliothèque
Après recherche sur le web, le compilo C++ fonctionne par substitution de termes, et donc ne peux compiler une implémentation (source .CPP) avec templates... Sauf, dans certains cas, avec Visual Studio de Crosoft....

Bref, j'ai contourné mon problème en instaurant une classe abstraite, et une fonction virtuelle oure de création d'une instance, à la manière de la VCL...

merci de la réponse (bonne, héhé) !

blueperfect
Commenter la réponse de blueperfect