bonjour

J ai fait un code permettant d implementer une chaine de responsabilite avec le message sous forme de template donc chaque maillon doit connaitre le type du message.
Le probleme est qu' a present je veu que chaque maillon soit dans une dll et que le message parcour les dll...

le pb c'est que je sais comment recuperer un pointeur sur un object contenu dans une dll mais pas comment construire mon object en lui passant le type pour recupere ensuite le pointeur


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
 
// j ai une erreur a la compilation 
extern "C" __declspec(dllexport) template<class T> Handler<T>* GetHandler(void);
 
// sans creer les object dans la dll le code fonctionne:
	// Avec Template chaine
	HandlerManager< std::string> inst;
	inst.AddHandler( new ConcreteHandler1<std::string>("ok1") );
	inst.AddHandler( new ConcreteHandler2<std::string>("ok2") );
	inst.AddHandler( new ConcreteHandler3<std::string>("ok3") );
	inst.SendRequest("ok3");
	inst.Clean();
comment passer le type a la fonction qui se trouve dans la dll et qui doit construire l'object et renvoyer le pointeur?