daesdemon
Messages postés2Date d'inscriptionjeudi 26 octobre 2006StatutMembreDernière intervention27 octobre 2006
-
26 oct. 2006 à 17:27
daesdemon
Messages postés2Date d'inscriptionjeudi 26 octobre 2006StatutMembreDernière intervention27 octobre 2006
-
27 oct. 2006 à 09:38
Bonjour j'ai un petit soucis
J'ai unbe DLL non MFC ( STL map + iterator ) que j'utilise a partir d'une app MFC
Le probleme arrive quand je recupère un map::iterator d'un objet instancié dans la dll à partir de l' Application MFC. Le end iterator n'est jamais atteint.
Je fais quelque chose comme ca:
// pm is a dll created object instance ot type map<string,object*>
map<string,object*>::iterator it;
pm.map["test"] = &object;
for (it = pm.map.begin();it!= pm.map.end(); it++)
{
log("iteration");
log(it->first);
}
Et dans mon log je recupère bien la clé : "user" mais ensuite j'ai une exception illegal memory access car le programme continue comme s'il l'iterateur ne devenait pas end()
De toute facon quand j'ai deux objets dans la map, je n'atteins pas non plus le second objet. Tout se passe comme si le pointer _right de l'iterateur etait faux
Quelqu'un aurait il une piste pour cela?
J'ai essayé a partir de deux appli differentes et j'ai completement refais ma class de dll mais j'ai toujours la meme erreur.
Est-il impossible d'utiliser une dll non MFC dans une application MFC?