Concernant les entêtes précompilées, dans ma libBusiness j'ai que ce genre de classe :
1 2 3 4 5
|
class CClient : public CData<CClient>
{
}; |
J'ai un include qui inclue toutes mes données métiers
1 2 3 4
|
#include "CClient.h"
#include "CVehicle.h"
//etc... |
Le but de cet include est qu'il définie également une type list avec toutes les classes métiers, liste qui sera utilisée pour une hiérarchie éparpillée.
Dans les propriétés du projet libBusiness, j'ai indiqué "Créer une entête pré-compilée" avec le fichier d'inclusion ci dessus.
A la compilation, lorsqu'il crée la librairie, j'ai beaucoup de warning :
1>CClient.obj : warning LNK4006: ___@@_PchSym_@00@UmvdwveUtvhwzgzhUoryhUocdyfhrmvhhUwvyftUxzeoorhgOlyq@ déjà défini dans CVehicle.obj
Et au link du projet utilisateur (Projet1) j'ai des erreurs :
2>libBusinessd.lib(CClient.obj) : error LNK2005: ___@@_PchSym_@00@UmvdwveUtvhwzgzhUoryhUocdyfhrmvhhUwvyftUxzeoorhgOlyq@ déjà défini(e) dans libBusinessd.lib(CAvlList.obj)
J'imagine que j'utilise mal ces entêtes pré compilées.
C'est quoi "extern template" ? Ca va faire quoi ?
Merci pour vos réponses,
A bientôt
Partager