##########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.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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.
##########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
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
David <nospam@home.com> 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
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