begin process at 2012 05 30 08:30:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Urgent svppp : Utilisation de <list>


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Urgent svppp : Utilisation de <list>

mercredi 12 avril 2006 à 17:34:58 | Urgent svppp : Utilisation de <list>

najla1986

j'ai une classe message, qui comme membre a, entre autre, un objet *expediteur.
Lorsque je veux envoyer une occurence de cette classe sur ma liste, par exemple :

listeMessages.push_back(msg);

J'ai l'erreur "Unhandled exception at 0x7c81eb33 in InpresMail.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x0012e96c.." qui survient.

Je pense que ca vient du pointeur de ma variable objet expediteur...
Quelqu'un aurait une idée de comment éviter ce problème ??

Merci de votre aide !
mercredi 12 avril 2006 à 18:37:41 | Re : Urgent svppp : Utilisation de <list>

satellite34

memset(&msg, 0, sizeof(msg));

non?




@+;
satellite34

http://www.rootscommunity.com/

mercredi 12 avril 2006 à 18:53:19 | Re : Urgent svppp : Utilisation de <list>

SAKingdom

Membre Club

Ton msg à t-il de la mémoire allouer? La tu déclaré sous forme de tableau (char msg[255]) ou comme ceci: char *msg.

Si il est sous forme *msg bien tu n'a peut-être pas allouer de mémoire. Je ne sais pas quesque tu utilise mais tu peut faire ceci

msg = (char *)malloc(255*sizeof(char));

Sinon, si c'est un tableau, alors je sais pas d'ou vien le problème.

___________________________________________
Les plus grands esprits trouvent toujours une solution

mercredi 12 avril 2006 à 18:56:12 | Re : Urgent svppp : Utilisation de <list>

satellite34

aiai, ce bon vieux malloc est a proscrire en c++, on fait new en c++ pour allouer la memore!!!!


@+;
satellite34

http://www.rootscommunity.com/

mercredi 12 avril 2006 à 18:57:25 | Re : Urgent svppp : Utilisation de <list>

satellite34

char *msg = new char[256];

voila une allocation c++


@+;
satellite34

http://www.rootscommunity.com/

mercredi 12 avril 2006 à 19:06:11 | Re : Urgent svppp : Utilisation de <list>

SAKingdom

Membre Club
memset aussi. Ce sont toute des fonctions du RunTime. C'est pas parcequ'elle font partie du standard C quelle ne doivent pas être utiliser en C++. De toute je n'utilise jamais new ni malloc. Je préfaire VirtualAlloc qui est beaucoup plus performant (sous Windows bien sûre).

___________________________________________
Les plus grands esprits trouvent toujours une solution

mercredi 12 avril 2006 à 19:08:27 | Re : Urgent svppp : Utilisation de <list>

najla1986

Euh je sais pas si vous avez bien compris ma question.
Voici mes classe

class message
{
    private :
          int ... ;
          expediteur   * exp;
          .. autre variables ..
    public :  
          ...
}
classe maClasse
{
    private :
          list<message> ListeMessages;
    ....
    public :
          void mafonction()
            {
                   message msg;
                   // encodage des donnees
                   ListeMessages.push_back(msg);
             }
}

Et c'est a l'instruction en rouge que j'ai l'erreur. Dans mon constructeur de classe Message, j'alloue bien (avec un new) un espace mémoire. De plus j'arrive à l'initialiser par exemple avec ma méthode SetExpediteur.

Voila... En espérant avoir une idée :(

mercredi 12 avril 2006 à 19:12:19 | Re : Urgent svppp : Utilisation de <list>

SAKingdom

Membre Club
msg est une classe? Mais il fallait le dire. Là je peut te dire que je n'ai vraiment aucune idée du problème

___________________________________________
Les plus grands esprits trouvent toujours une solution

mercredi 12 avril 2006 à 19:14:50 | Re : Urgent svppp : Utilisation de <list>

najla1986

je l'ai dis lol :

Lorsque je veux envoyer une occurence de cette classe sur ma liste, par exemple :

listeMessages.push_back(msg);

mercredi 12 avril 2006 à 19:16:06 | Re : Urgent svppp : Utilisation de <list>

satellite34

pourquoi un new dans le construceur? aloue la mémoire ds ta fonction en dynamique

         void mafonction()
            {
                   message *msg = new message;
                   // encodage des donnees
                   ListeMessages.push_back(msg);

                  delete msg; // peut etre pas
             }


@+;
satellite34

http://www.rootscommunity.com/


1 2 3

Cette discussion est classée dans : urgent, objet, utilisation, classe, svppp


Répondre à ce message

Sujets en rapport avec ce message

Urgent...classe de manipulation de grands entiers [ par Orkblutt ] Salut,j'aimerai implementer une classe qui me permettrai de manipuler (+,-, /,*,%) des grands nombres (Nb>32bits) mais je ne sais pas du tout comment Utilisation de la classe CListCtrl dans Visual C++ [ par 85ben ] URGENT : OBLET OLE [ par Ricpperso ] Comment faire pour insérer un Ojet OLE, mais spécifique, c'es a dire, que l'utilisateur n'a pas besion de choisir, dans la fenêtre l'objet, mais que t CwinThread urgent [ par langedechu ] Bonjour,J ai un prob avce la classe CWinThread (je vais cracker si je n arrive pas le résoudre).Bon je m'explique : j ai creer une la classe : class c CObject [ par ifren ] salutj'ai un petit probleme,bon j'ai une classe data qui herite de la classe CObject, jusque la normalj'ai un tel codeData::Data(): // Copie de l'obje Sécurité - reverse engineering (rendre difficile son utilisation) [ par jockos ] J'ai une classe A et une classe B qui contient un objet A :class A{private: unsigned char * key;public: ........ .........};class B{private: Pointeur et objet ET collection d'objet [ par MrKribou ] En fait je savais pas trop quoi mettre comme titre pour pas copier :pBon je vous explique mon probleme (j'ai pas le source de ce probleme sous la main URGENT : Classes, Pointeurs, et fonctions membres !! [ par guiguimac ] bonsoir ... mon pbm avance mais là je cale grave !j'ai une classe cA avec comme membres (pour l'instant tout en public) :une string "NOM"une fonction Utilisation d'une fonction callback [ par laurentl2000 ] Bonjour, Voici une fonction callback destinée à envoyer les titres des fenêtres IE ouvertes dans une listbox... BOOL CALLBACK EnumWindowsProc(HWND hwn Utilisation de TMemo sous C++ Builder de Borland [ par Splite ] Bonjour à tous Voilà j'ai un petit problème, je souhaite accéder à un Memo d'une classe mère TForm1 à partir d'une classe que j'ai crée. Le problème e


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,853 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales