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

Langage C++ Discussion :

Meilleure méthode pour créer une copie d'une classe dans une de ses fonctions membre ?


Sujet :

Langage C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4
    Par défaut Meilleure méthode pour créer une copie d'une classe dans une de ses fonctions membre ?
    Bonjour,

    j'ai une classe Name_pair :

    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
     
    class Name_pair {
    private :
      vector<string> name;
      vector<double> age;
    public :
      Name_pair()
      {
      }
      Name_pair(vector<string> ss, vector<double> aa)
        : name{ss}, age{aa}
      {
      }						    
      void read_names();
      void read_ages();
      void print();
      void sort();
    };
    dans la fonction membre sort() j'ai besoin de créer une copie temporaire de ma classe.

    Est-ce qu'il y a un moyen de créer une copie simplement ?

    Quelque chose du style :
    Pour le moment vous pouvez voir que j'ai implémenté un constructeur et je peux donc faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Name_pair old {name,age} ;
    Mais je me demande si on peut faire mieux.

    Merci.
    S.

  2. #2
    Membre Expert Avatar de Ehonn
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    788
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 788
    Par défaut
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Name_pair copie = *this;
    Vu tes attributs (et la fonction membre .sort()), as-tu considéré l'utilisation de std::map ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4
    Par défaut
    Merci Ehonn,

    je ne me souvenais plus qu'on accédait aux valeurs de this avec *this.

    Pour ta remarque à propos de map c'est probablement une très bonne solution dans l'absolu mais là ça dépasse le cadre de ce que j'essaye de faire.

    Je suis en train de faire les exercices d'un bouquin et là où j'en suis c'est encore un peu tôt pour utiliser map.

    S.

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

Discussions similaires

  1. Enregistrer une copie d'un onglet dans une interface multi-onglet
    Par odjapo dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 20/06/2014, 13h18
  2. Réponses: 6
    Dernier message: 27/09/2012, 09h19
  3. Réponses: 3
    Dernier message: 14/08/2012, 10h24
  4. [PHP Excel] Meilleure méthode pour créer un grand nombre de feuille ?
    Par sunshine33 dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 16/04/2010, 10h07
  5. Réponses: 40
    Dernier message: 21/06/2007, 17h58

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