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 :

acces cellule vector


Sujet :

SL & STL C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de sylvain.cool
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 242
    Par défaut acces cellule vector
    Bonjour,
    j'utilise la classe vector pour creer un tableau.
    je l'utilise comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    	double * pt=dataPiece.getPoint(0);
    	std::vector<double> height(dataPiece.getNumberOfPoints());
    	cout<<"data number of points: "<<dataPiece.getNumberOfPoints()<<endl;
     
    	for(int i=0; i<dataPiece.getNumberOfPoints(); i++ ){
    		pt=dataPiece.getPoint(i);
    		cout<<"pt[2]: "<<pt[2]<<endl;
    		height.push_back(pt[2]);
    		cout<<"height["<<i<<"]: "<<height[i]<<endl;
    	}
    A l'affichage, la valeur de pt[2] donne des valeurs du style de: 7.0563 ou -0.45.
    Par contre height[i] affiche toujours 0.
    J'ai donc essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    	double * pt=dataPiece.getPoint(0);
    	std::vector<double> height(dataPiece.getNumberOfPoints());
    	std::vector<double>::iterator it=height.begin();
    	cout<<"data number of points: "<<dataPiece.getNumberOfPoints()<<endl;
     
    	for(int i=0; i<dataPiece.getNumberOfPoints(); i++ ){
    		pt=dataPiece.getPoint(i);
    		cout<<"pt[2]: "<<pt[2]<<endl;
    		height.push_back(pt[2]);
    		cout<<"height["<<i<<"]: "<<*it<<endl;
    		it++;
    	}
    mais le resultat est sensiblement le meme. Au lieu d'avoir 0, j'ai toujours -2.65698e+303.
    pourquoi?

    J'attends vos reponses avec impatiente.
    Merci d'avance.

  2. #2
    Membre émérite Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Par défaut
    Bonjour.

    Je te suggère d'ajouter à tes cout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::cout <<"taille de mon vecteur"<<height.size()<<std::endl;
    Tu devrais trouver le bug.

    Attention, la suite de ce post dévoile la fin de l'histoire...

    En fait quand tu initialises le vecteur avec la taille de tes données, et que tu fais des pushback, la taille va augmenter à partir de celle à laquelle il a été initialisé.

    Bref pour résoudre ton probleme fais plutot :
    Et enfin http://www.sgi.com/tech/stl/Vector.html

  3. #3
    Membre éclairé Avatar de sylvain.cool
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 242
    Par défaut
    Arfff.
    Je suis trop bete....
    Merci pour ton explication. Maintenant ca marche.

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

Discussions similaires

  1. Acces cellule Stringgrid
    Par francois.delpierre dans le forum Composants VCL
    Réponses: 1
    Dernier message: 02/03/2011, 12h25
  2. acces cellule avec userform ouvert
    Par vinystic dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/01/2009, 17h23
  3. Problème d'accès à un vector dans un vector
    Par Petzouille57 dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 18/05/2007, 10h28
  4. [VB]Excel - Accès à une cellule nommée
    Par andrew07 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/02/2006, 13h01
  5. [Excel] Problème avec l'accès aux feuilles et aux cellules
    Par bl00df0x dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 30/09/2005, 14h21

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