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 :

surcharge methode et instance de classe


Sujet :

C++

  1. #1
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 141
    Points : 91
    Points
    91
    Par défaut surcharge methode et instance de classe
    Rebonjour, j'ai un autre soucis un peu plus complexe.
    Dans .cpp, j'ai un constructeur qui me remplie un vector de string(mais peut importe le type, cela pourrait être des objets).
    Dans ce meme . cpp, j'ai une methode get
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    bool Nom de ma classe::Get(vector<string>&  Value)
    {
    	Value= VALUES;
    	return true;
    }
    VALUES est ce fameux vector remplie.

    Je pense que ce que je viens de faire est une surcharge.

    Bon maintenant, j' instancie un objet dans mon main de façon a pouvoir récupéré ce vector.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    int main(){
     
     
    vector<string> Value;
     
    new nom de ma classe* Object1 = new nom de ma classe;
    Object1->Get(Value);
     
    cout<<"Press to continue";
    getchar();
    return 0;
    }
    A l'exécution, plantage, je n'ai pas de message d'erreur.

    Premièrement, cela me semble bizarre de mettre Value entre parenthèse car d'après ma méthode, il y a automatiquement qq chose en argument. Ensuite, j'aimerais faire un print pour voir ce vector, mais ma méthode ne retourne qu'un booléen. Je ne sais pas comment retourner un vector en C++.

    Merci de vos réponses.

  2. #2
    Membre averti Avatar de Trunks
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 534
    Points : 412
    Points
    412
    Par défaut
    Citation Envoyé par julien25 Voir le message
    Je ne sais pas comment retourner un vector en C++.
    Pourquoi pas vector<T> Foo::bar() ?

    (remplacer bool par vector<T>)

  3. #3
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 141
    Points : 91
    Points
    91
    Par défaut
    Merci Trunks.
    J'ai donc changer de type de retour. Il plante toujours au même endroit. Le pb est que je n'ai rien a la console d'erreur, je ne peux donc pas me debugger.
    Voila ce que j'ai maintenant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    vecteur <string> Nom de ma classe::Get()
    {
    	{
            //debug
    	for (index=0; index < size; index++)
    	cout<<VALUE[index]<<endl;
    	//mon retour
            return VALUE;
    }
    }
    Merci encore

  4. #4
    Membre averti Avatar de Trunks
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 534
    Points : 412
    Points
    412
    Par défaut
    Tes exemples sont bourrés de fautes.

    Poste un exemple compilable si tu veux qu'on t'aide ...

  5. #5
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 141
    Points : 91
    Points
    91
    Par défaut
    Disons que c'est pour donner une idée de ce que je fais. Le but étant juste que je puisse être décoincé sans pour autant que vous me donniez la solution explicitement si vous la connaissez.

  6. #6
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 141
    Points : 91
    Points
    91
    Par défaut
    J'ai trouver une solution. Cependant, ce n'est pas exactement ce que je voulais faire.

    J'ai donc une question précise : a votre avis, peut on dans le constructeur construire un vector et créer une méthode qui récupère ce vector ?
    Pour résoudre mon pb, j'ai tout mis mis dans ma méthode.

    Merci

  7. #7
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Bonsoir,
    En toute franchise difficile de t'aider en l'absence de code. Je pense que tu as un problème sur ta variable vecteur. Je soupçonne qu'elle ne soit pas membre de ta classe mais locale à ton constructeur. Pour t'aider, mais sans te donner la solution, il faudrait vraiment que tu nous montre un peu de code.

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

Discussions similaires

  1. Surcharger methode d'une instance sans etendre sa classe
    Par looclooc dans le forum Débuter
    Réponses: 4
    Dernier message: 22/09/2009, 14h42
  2. Réponses: 2
    Dernier message: 09/10/2005, 15h35
  3. Instance de classes
    Par KymZen dans le forum Tkinter
    Réponses: 9
    Dernier message: 07/04/2005, 08h35
  4. [Template] methode template d'une classe pas template
    Par bigquick dans le forum Langage
    Réponses: 8
    Dernier message: 25/03/2005, 15h09
  5. Conditions de destruction des instances de classes
    Par elvivo dans le forum Général Python
    Réponses: 4
    Dernier message: 29/12/2004, 17h16

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