IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++/CLI Discussion :

C++ CLI Tableaux d'objets identiques..


Sujet :

C++/CLI

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 21
    Par défaut C++ CLI Tableaux d'objets identiques..
    Bonjour à tous,
    voilà j'ai un problème en C++ CLI, j'utilise un tableau d'objet avec des paramètres fixés par rand
    le problème est que lorsque je fixe la valeur pour un objet , la meme valeur pour tous les autres objets est fixée également

    Voilà un bout de mon code :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    srand(time(NULL));
    for(int i=0;i<NbCouche;i++){
     
        for(int j=0;j<NbNeu;j++){
     
    	MesObjets[i,j] = gcnew UnObjet(i,j);
     
            for(int k=0;k<NbConnexNeuMax;k++){
     
             MesObjets[i,j]->W[k]=(float)(rand() % 1000)/(float)10000-(float)0.05; //W est un tableau de valeurs aléatoires
     
                }
         }
    }


    Petit précision : en fait lorsque le programme sort de la boucle les tableaux W de chaque objet sont identiques...
    De plus lorsque je fixe la valeur d'un élément W[k] d'un tableau appartenant à un objet(i,j), cette valeur W[k] est appliquée à tous tableaux W des objets de MesObjets...

    Si je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    MesObjets[0,0]->W[0]=(float)7;
     
    float test=(float)MesObjets[2,2]->W[0];

    alors test vaut aussi 7 alors que ce sont deux objets différents avec des valeurs différentes

    Comment est-ce possible?

    Merci

  2. #2
    Membre très actif Avatar de metagoto
    Profil pro
    Hobbyist programmateur
    Inscrit en
    Juin 2009
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Hobbyist programmateur

    Informations forums :
    Inscription : Juin 2009
    Messages : 646
    Par défaut
    Citation Envoyé par zebulon88 Voir le message
    Comment est-ce possible?
    Probablement parce que c'est un même W qui est partagé par toute tes instances ? Comment définis-tu W ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 21
    Par défaut
    Oui c'était cela la déclaration de W était statique...
    Merci
    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Delete sur un tableaux d'objets
    Par Pfeffer dans le forum C++
    Réponses: 24
    Dernier message: 22/01/2007, 13h52
  2. Réponses: 1
    Dernier message: 11/01/2007, 17h15
  3. [C++/CLI] Accès aux objets en global
    Par kinouseb dans le forum C++/CLI
    Réponses: 5
    Dernier message: 22/11/2006, 09h08
  4. [Collections]Tableaux d'objets uniques.
    Par Invité dans le forum Collection et Stream
    Réponses: 30
    Dernier message: 22/03/2006, 13h20
  5. delete[] seulement pour des tableaux d'objets?
    Par Crisanar dans le forum C++
    Réponses: 7
    Dernier message: 22/10/2005, 19h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo