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++ Discussion :

Tableau 2D d'objets


Sujet :

C++

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 327
    Par défaut Tableau 2D d'objets
    Bonjour,

    Voila j'ai un problème pour initialiser mon tableau à deux dimensions contenant des objets. Je m'explique, la compilation ce passe très bien mais lorsque je démarre mon application elle plante soudainement à cause de ces quelques lignes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    this->_pixels = new Pixel * [Image::HEIGHT+1];
     
    	std::fill_n (this->_pixels, Image::HEIGHT+1, static_cast<Pixel*>(0));
    	for (int i=0;i<i;i++) {
    		this->_pixels[i] = new Pixel[Image::WIDTH+1];
    	}
        for (int row=0;row<Image::HEIGHT+1;row++) {
        	this->_pixels[row][Image::WIDTH].initialize (Pixel::WRONG, 0);
        }
        for (int col=0;col<Image::WIDTH;col++) {
        	this->_pixels[Image::HEIGHT][col].initialize (Pixel::WRONG, 0);
        }
    Or je ne vois vraiment pas ce qui cloche... Aurais-je oublié quelque chose ? Merci d'avance

  2. #2
    Membre chevronné
    Avatar de haraelendil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 283
    Par défaut
    c'est normal, en l'état, aucun de tes pixel n'est initialisé.

    Regarde la tête du for ou tu fait les new, il y a quelque chose qui devrait te choquer...

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 327
    Par défaut
    Justement le constructeur par défaut est appelé lorsque je fais "new Pixel[int]" non ?

  4. #4
    Membre chevronné
    Avatar de haraelendil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 283
    Par défaut
    J'ai dit regarde la tête du for
    Citation Envoyé par scary Voir le message
    for (int i=0;i<i;i++)

  5. #5
    Membre Expert
    Avatar de Joel F
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Septembre 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2002
    Messages : 918
    Par défaut
    vector<vector>Pixel> > ?
    boost::multi_array<Pixel, 2> ?
    un tableau NRC ?

    les tableaux 2D en multi-new ca fait un peut pleurer :€

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 327
    Par défaut
    No comment

    Pour le vecteur cela ne sert pas à grand chose sachant que je connais d'avance la taille de mon tableau, comme c'est plus lourd d'utiliser les vecteurs je préfère connaissant ma taille utiliser des tableaux normaux.

    Ensuite pour boost je ne l'ai tout simplement pas installé, mais c'est vrai que cela aurait été une bonne solution.

    Désolé du dérangement pour cette faute pour du moins... vraiment nul de ma part

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

Discussions similaires

  1. Créer un tableau/liste d'objets
    Par TYBO_2 dans le forum Langage
    Réponses: 5
    Dernier message: 15/04/2008, 16h25
  2. Transmission de tableau dynamique d'objets
    Par laulaurent dans le forum C++
    Réponses: 7
    Dernier message: 17/11/2007, 22h59
  3. Réponses: 11
    Dernier message: 26/09/2007, 21h24
  4. tableau dynamique d'objets
    Par logarithme1984 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 15/03/2007, 13h51
  5. [VBA-E] - transformé un tableau excel en objet
    Par jimbololo dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 03/06/2006, 15h48

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