c++ probleme pour récupérer un string d'un objet
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

c++ probleme pour récupérer un string d'un objet



  1. #1
    cosmoff

    c++ probleme pour récupérer un string d'un objet


    ------

    Bonjour à tous,

    voila j'ai crée une class personnage dans personnage.h :
    Code:
    class Personnage{
              public:
                   Personnage(string nom);
                   int vie;
                   string nom;
    };
    dans mon personnage.cpp j'ai :
    Code:
    Personnage::Personnage(string nom){
            nom = nom;
    }
    et j'ai dans mon main.cpp
    Code:
    Personnage P1("cosmoff");
    cout<<"Le nom du joueur est : "<<P1.nom<<endl;
    Mais mon terminal me renvoie :
    Le nom du joueur est :
    P1.nom ne s'affiche pas.

    avez vous une idée ?

    Merci d'avance

    -----

  2. #2
    pm42

    Re : c++ probleme pour récupérer un string d'un objet

    nom = nom ne va pas marcher.
    Quand tu déclares dans un constructeur ou une méthode un argument qui s'appelle comme une variable d'instance, celle ci devient invisible.
    Il faut soit mettre un this devant et écrire this.nom = nom ou éviter d'appeler ton argument comme ça.
    Par exemple,
    Code:
    Personnage::Personnage(string unNom){
            nom = unNom;
    }

  3. #3
    lou_ibmix_xi

    Re : c++ probleme pour récupérer un string d'un objet

    this.nom
    attention, this est un pointeur donc this->nom
    (c'est d'ailleurs amha une très bonne pratique de précéder tous champs d'une classe avec this)

  4. #4
    pm42

    Re : c++ probleme pour récupérer un string d'un objet

    Citation Envoyé par lou_ibmix_xi Voir le message
    attention, this est un pointeur donc this->nom
    Bonne remarque, l'habitude du java...

    Citation Envoyé par lou_ibmix_xi Voir le message
    (c'est d'ailleurs amha une très bonne pratique de précéder tous champs d'une classe avec this)
    Question de point de vue. Personnellement, je ne supporte pas parce que cela alourdit le code pour ne rien apporter à la lisibilité et qu'il suffit d'un oubli pour changer la sémantique.
    Je préfère de loin éviter les conflits de nom.

  5. A voir en vidéo sur Futura
  6. #5
    cosmoff

    Re : c++ probleme pour récupérer un string d'un objet

    this->nom

    ca marche !

    merci de votre aide

Discussions similaires

  1. probleme pour réinitialiser un string C++
    Par cosmoff dans le forum Programmation et langages, Algorithmique
    Réponses: 3
    Dernier message: 18/08/2016, 14h17
  2. Récupérer un objet aléatoire depuis un tableau (en JavaScript)
    Par Orikrin1998 dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 26/02/2014, 19h20
  3. Réponses: 3
    Dernier message: 26/11/2011, 22h00
  4. problème pour récupérer une variable par un lien
    Par lawliet yagami dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 18/03/2010, 23h14
  5. comment recuperer un objet perdu dans un lave linge
    Par invitee5450d8c dans le forum Dépannage
    Réponses: 2
    Dernier message: 15/05/2005, 18h44