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 :

problem de vector avec une classe


Sujet :

SL & STL C++

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 11
    Points : 4
    Points
    4
    Par défaut problem de vector avec une classe
    voila avec un ami on a un projet a faire pour l'ecole.
    on a un probleme avec les vecteurs.
    Lorsque l'on rentre des informations dans une classe , a savoir un nom , un prenom et un age avec une boucle.
    le programme nous affiche toujours le meme nom et prenom mais le bon age.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    	vector<Eleve> V1 (Iris.get_effectif() ) ;
     
     
    	while( x < Iris.get_effectif() ) 
    	{	
     
    	cout << "\nEntrer le Nom de l'eleve : " ;
    	cin >> nom ;
     
    	cout << "Entrer le Prenom de l'eleve : " ; 
    	cin >> prenom ;
     
    	cout << "Entrer l'age de l'eleve : " ;
    	cin >> age  ;
    	V1[x].Con( nom , prenom , age ) ;
    	x++ ;
     
    	}

  2. #2
    Membre habitué Avatar de Ksempac
    Inscrit en
    Février 2007
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 165
    Points : 185
    Points
    185
    Par défaut
    Les scanf("%s", char*) c'est deja incorrect et dangereux en C, mais ca l'est encore plus en C++ ou tu disposes de cin
    Deja tu devrais changer ca ce sera plus propre.

    A part ca, peut on avoir la déclaration de ta classe eleve ?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 11
    Points : 4
    Points
    4
    Par défaut
    oui tu a raison , mais ceci ne change pas mon probleme
    code modifier ^^
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    #ifndef ELEVE_H
    #define ELEVE_H
     
    class Eleve  
    {
    private:
    	char* nom ;
    	char* prenom ;
    	int age ;
    	Absence absence[5] ;
     
    public:
    	Eleve() ;
    	void Con( char* _nom , char* _prenom , int _age ) ;
    	void Email_parent() ;
    	void Ajouter_absence( char* _nom , char* _prenom ) ;
    	void Suprimer_Absence( char* _nom , char* _prenom ) ;
    	void afficher() ;
     
    };
     
    #endif

  4. #4
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Utilises std::string pour tes chaines. Je parie qu'a cause des pointeurs tu les partages sans le vouloir.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  5. #5
    Membre du Club
    Inscrit en
    Septembre 2003
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 49
    Points : 43
    Points
    43
    Par défaut
    Je paris que tu ne fais aucune allocation pour _nom et _prenom et donc les dernieres donnees entrees sont associees a toutes les instances de ta classes Eleve.

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 11
    Points : 4
    Points
    4
    Par défaut
    de retour apres une semaine car le projet est le lundi
    voila probleme avec les vecteur encore ^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    void Classe::liste(vector<Eleve*> Vecteur)
    {
    	int i ;
    	for( i=0 ; i < effectif; i++)
    	{
    		cout << i << ") "<< Vecteur[i].nom << "/t" << Vecteur[i].prenom ;
    	}
     
    }
    dans classe.cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void liste( vector<Eleve*> Vecteur ) ;
    dans classe.h en public

    et donc j'ai pas mal d'erreur . j'ai bien declarer les librairies etc.

    mon objectif c'est de recuperer la liste des eleves que j'ai mis precedement dans un tableau fai par un vector.

    j'ai des erreurs du style
    Images attachées Images attachées  

  7. #7
    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 : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Remplace vector par std::vector (voir FAQ si tu ne sais pas pourquoi), et Vecteur[i]. par Vecteur[i]-> puisque tu stockes des pointeurs.

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 11
    Points : 4
    Points
    4
    Par défaut
    Merci!!
    ca fonctionne impecable grace a toi ^^

Discussions similaires

  1. [Compilation] probleme de linking avec une classe
    Par deubelte dans le forum C++
    Réponses: 6
    Dernier message: 17/02/2015, 23h19
  2. [2.x] probleme de syntaxe avec une classe
    Par adel25 dans le forum Symfony
    Réponses: 1
    Dernier message: 01/09/2013, 22h39
  3. Probleme de débutant avec une class
    Par hugoclo dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 06/06/2013, 16h14
  4. [débutant] probleme avec une classe arbre
    Par go_all_in dans le forum C++
    Réponses: 17
    Dernier message: 08/06/2006, 10h33
  5. Probleme avec une class template
    Par lenectar dans le forum Langage
    Réponses: 2
    Dernier message: 01/03/2006, 10h49

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