Partage
  • Partager sur Facebook
  • Partager sur Twitter

[C++] problème help!!

je ne vois vraaiment pas d'ou ça vien...

Sujet résolu
    20 avril 2006 à 18:42:33

    Bonjours j'ai un problème dans mon script et je n'arrive pas a le resoudre, le pire c'est que j'utilise presque le meme syntaxe dans un autre script et la ça fonctionne...
    A la compilation aucun problème mais dés qu'il doit excuter cette partie ça plante...
    ParcPlayer est un parc d'objet avec pour utulité d'etre une liste chainé.
    Code :

    void C_ParcPlayer::Ajouter(/*SOCKET tempsock*/)
    {

    C_Player *ptemps;
    ptemps= new C_Player();

    pCourant=ptemps;// Le probème est ici!
    //SDL_Delay(7000);
    }


    je ne vois vraiment pas d'où vien le problème...
    Auriez vous une idée?
    ça fais un moment que je cherche mais rien.
    MErci de votre aide.
    • Partager sur Facebook
    • Partager sur Twitter
      20 avril 2006 à 19:14:16

      déclare pCourant dans ta class.
      Sinon montres nous toutes tes sources (surtout la déclaration de la classe)
      • Partager sur Facebook
      • Partager sur Twitter
        20 avril 2006 à 19:22:23

        headeur de parc player
        #ifndef __LAU_PARCPLAYER_H__
        #define __LAU_PARCPLAYER_H__

        #include "player.h"
        //#include <SDL/SDL_thread.h>
        //#include <winsock2.h>
        //#include <SDL/SDL.h>
        //#include "C_chaine.h"
        class C_ParcPlayer
        {
            public:
                    C_Player *pPremiers;
                    C_Player  *pCourante;

                    C_ParcPlayer();
                    virtual ~C_ParcPlayer();

                    void Ajouter(/*SOCKET tempsock*/);
                    //void Supprime(C_Player * pTemp);
        };
        #endif


        Tread de connection:
        int thread_connexion(void *unused)
        {
            C_ParcPlayer * ParcPlayer;
            //C_Player * NewPlayer;
            SDL_Thread *Thread2;
            WSADATA WSAData;

            SOCKET sock;
            SOCKADDR_IN sin;
            SOCKADDR_IN csin;

            WSAStartup(MAKEWORD(2,0), &WSAData);
            sock = socket(AF_INET, SOCK_STREAM, 0);
            sin.sin_addr.s_addr   = INADDR_ANY;
            sin.sin_family                        = AF_INET;
            sin.sin_port                                = htons(1200);
            bind(sock, (SOCKADDR *)&sin, sizeof(sin));
            listen(sock, 0);
                int sinsize = sizeof(csin);
            SOCKET newsock;

            if(1){
                if(csock = accept(sock, (SOCKADDR *)&csin, &sinsize));
                {
                    idata++;
                    ParcPlayer->Ajouter();// ajoute un player a PArcPlayer
                    //Thread2 = SDL_CreateThread(thread_func, NewPlayer);
                    // on ajoute un nouveau player au parc

                }
            }
        }


        La fonction est appeller a partir de ce thread.
        Il attend une connection. Une fois arrivé, il exécute la classe donné plu haut.

        Je cherche encore mais je ne comprend vraiment pas. Ca peut venir du faite de l'utilisation a partir d'un thread?
        • Partager sur Facebook
        • Partager sur Twitter

        [C++] problème help!!

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown