Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

std::map et pointeurs

2 réponses
Avatar
David
Bonjour,
Voici le code suivant

##########main
//initialise la classe
class *c = new c();

//renvoi un map
std::map<std::string, myclass> = c->getmap()


############ c.cpp
la methode getmap est du type
std::map<std::string, myclass> c::getmap
{

//renvoi un map
std::map<std::string, myclass> testmap;
return testmap;
}


myclass() est un objet contenant principalement des strings mais de
pointeurs.


L'appel de c->getmap() me renvoi un segfault. La question que je me pose est
de savoir si le fait d'avoir déclaré c comme un pointeur, et le fait que
l'appel de c->getmap() renvoi un map peut crée un problème de mémoire de la
facon dont je l'ai écris.

En d'autres termes est ce que le retour la méthode getmap() peut être à
l'origine du problème.


david

2 réponses

Avatar
David
David wrote:

Bonjour,
Voici le code suivant

##########main
//initialise la classe
class *c = new c();

//renvoi un map
std::map<std::string, myclass> = c->getmap()


############ c.cpp
la methode getmap est du type
std::map<std::string, myclass> c::getmap
{

//renvoi un map
std::map<std::string, myclass> testmap;
return testmap;
}


myclass() est un objet contenant principalement des strings mais pas de
pointeurs.


L'appel de c->getmap() me renvoi un segfault. La question que je me pose
est de savoir si le fait d'avoir déclaré c comme un pointeur, et le fait
que l'appel de c->getmap() renvoi un map peut crée un problème de mémoire
de la facon dont je l'ai écris.

En d'autres termes est ce que le retour la méthode getmap() peut être à
l'origine du problème.


david


Avatar
Jean-Marc Bourguet
David writes:

myclass() est un objet contenant principalement des strings mais de
pointeurs.


Une idée -- mais sans avoir de détail c'est difficile --
l'opérateur d'assignement, le constructeur de copie et de
destructeur ne collaborent pas très bien pour la gestion des
pointeurs.

--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org