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

SL & STL C++ Discussion :

[STL] Manipuler des vecteurs de vecteur


Sujet :

SL & STL C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    433
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 433
    Par défaut [STL] Manipuler des vecteurs de vecteur
    Bonjour,

    Je voudrais savoir s'il est possible de gérer des vecteurs de vecteurs avec la class vector de STL. Avec les tests que j'ai fait, il semble qu'il n'est pas possible de faire cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    vector< vector<int> > monVect;
    monVect[0][0] = 5;
    Dans mon projet j'ai besoin de manier de manière simple des tableaux de tableau d'entier alors par soucis de simplicité j'ai pensé à cette solution.

    Merci !

  2. #2
    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
    C'est possible, mais comme avec n'importe quel vecteur il faut que tes éléments soient alloués avant d'y accéder.

    Donc là ça plante car l'élément (0, 0) n'existe pas.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    433
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 433
    Par défaut
    Je croyais pourtant que la class vecteur était avant toute chose un vecteur dynamique !
    Et donc si je prends un vecteur, j'ai fait les test, si on demande à mettre une valeur à un indice hors du tableau, ca l'agrandit automatiquement (j'ai aussi fait le test, la méthode .size() est agrandie aussi).

    Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    vector<int> v(0);
    v[5] = 434;
    v[6] = 915;
    cout << v[5] << ' ' << v[6] << endl; // Affiche "434 915"

  4. #4
    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
    C'est un coup de bol, ton code n'est pas censé fonctionner. Ici il aurait fallu dimensionner le tableau avec le constructeur, appeler resize, ou ajouter les éléments avec push_back.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    433
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 433
    Par défaut
    Ha ok, je pensais que la classe était codée comme cela.
    Et donc, si je l'utilise pas comme cela mais avec les méthodes appropriées, j'aurais le droit d'accèder à un élements avec vect[x][y] ?

  6. #6
    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
    Bien sûr, heureusement

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

Discussions similaires

  1. Manipulation des vecteurs 3D
    Par chercheur111 dans le forum C++
    Réponses: 4
    Dernier message: 31/03/2014, 23h36
  2. Vecteur de vecteur de vecteur ?
    Par oodini dans le forum C++
    Réponses: 22
    Dernier message: 03/10/2011, 13h12
  3. Manipulation des vecteurs
    Par dptmt dans le forum MATLAB
    Réponses: 2
    Dernier message: 01/07/2011, 16h03
  4. Vecteurs de vecteurs de vecteurs
    Par El Charpi dans le forum C++
    Réponses: 4
    Dernier message: 11/01/2010, 21h29
  5. manipuler des vecteurs
    Par assouma01 dans le forum Langage
    Réponses: 5
    Dernier message: 29/04/2009, 18h36

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