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

MFC Discussion :

vecteur multidimensionnel


Sujet :

MFC

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 7
    Par défaut vecteur multidimensionnel
    j'ai une petit probleme sur l'initialisation d'un tableaux multidimensionnel.

    je le declare comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::vector<std::vector<Case *> > _tabCase;
    et je l'initialise comme ceci dans mon constructeur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for(int i=0;i<longueur;i++)
    		for(int j=0;j<largeur;j++)
    			this->_tabCase[i][j] = new Case(i,j,0);
    et quand je veux y acceder dans une autre fonction avec ce code par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cout<<this->_tabCase[i][j]->x();
    et j'obtient cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Exception non gérée à 0x0042d5b6 dans ConwayGame V0.1.exe:0xC0000005: Violation d'accès lors de la lecture de l'emplacement 0xcdcdcdd9.
    je n'arrive pas à voir le probleme, quelqu'un pour m'aider?

    PS: i et j sont dans les limites du tableaux

  2. #2
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 291
    Par défaut
    Il faut réserver le nombre de lignes et le nombre de colonnes pour chaque ligne. (boost::multi_array est une alternatve intéressante)
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 7
    Par défaut
    mon probleme reste même en l'initialisant de cette maniere

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    this->_tabCase.resize(longueur);
    	for(int i=0 ; i<longueur ; i++) _tabCase[i].resize(largeur); 
    	for(int i=0;i<longueur;i++)
    	{
    		for(int j=0;j<largeur;j++)
    		{
    			cout<<this->_tabCase[i][j]->x();
    		}
    	}
    pour ce que est de multi_array, je n'ai pas la librairie boost et je ne voudrais pas l'utiliser.

  4. #4
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 291
    Par défaut
    Difficile à dire. Quel est le problème minmal et complet qui pemette de reproduire ce que tu observes ?
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  5. #5
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Le code que tu nous montre là ne crée plus les éléments avant de les utiliser. Où sont passés les "new Case(i,j,0);" qui étaient présents dans ton code original ?

Discussions similaires

  1. [math] somme de plusieurs vecteurs à 3 dimensions
    Par teska dans le forum Mathématiques
    Réponses: 5
    Dernier message: 04/06/2003, 21h40
  2. Récuperer les coordonnées d'un vecteur
    Par kerzut dans le forum OpenGL
    Réponses: 5
    Dernier message: 15/04/2003, 11h51
  3. [langage] tableau multidimensionnel
    Par totox17 dans le forum Langage
    Réponses: 3
    Dernier message: 03/12/2002, 15h58
  4. Zoom sur des vecteurs ou lignes
    Par mat.M dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 25/11/2002, 10h40
  5. matrices * vecteur
    Par delire8 dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 07/09/2002, 14h15

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