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

MFC Discussion :

std::map<int,CStringArray> ????


Sujet :

MFC

  1. #1
    Membre habitué
    Inscrit en
    Avril 2002
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 180
    Points : 157
    Points
    157
    Par défaut std::map<int,CStringArray> ????
    Salut
    j'aimerait avoir une map se CStringArray mais quand je fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    std::map<int,CStringArray> m_mapStringArray;
    CStringArray mon_StringArray;
     
    ...
     
    m_mapSringArray[index]=mon_StringArray;
    ca dit que l'operator = n'est pas defini pour la classe CStringArray????

    avez vous des idee

    Merci

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    oui la classe doit comporter l'operateur d'affectation et le constructeur de copie .
    un truc comme ça:
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    // attention mettre: #include <afxtempl.h> dans stdafx.h
     
    class CArrayString : public CArray<CString,LPCTSTR>
    {
    public:
        CArrayString():CArray<CString,LPCTSTR>()
        {
        }
         // constructeur de copie
        CArrayString(const CArrayString &rItem)
        {
            CopyFrom(rItem);
        }
        //-----------------------------
        // operateur d'affectation
        const CArrayString& operator=(const CArrayString& Src)
        {
            CopyFrom(Src);
            return *this;
        }
     
        //-----------------------------
        // copier les données d'une source.
        void CopyFrom(const CArrayString & Src )
        {
            if(this==&Src) return;        
             RemoveAll();
            for(int i=0;i<Src.GetSize();i++) Add(Src[i]); 
       }
    };
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    std::map<int,CArrayString> m_mapStringArray;
    CArrayString mon_StringArray;
     
    ...
     
    m_mapSringArray[index]=mon_StringArray;
    note je prefere les classes temlates CArray ,CMap aux anciennes classes CStringArray etc...
    mais le principe est le même...

Discussions similaires

  1. Vider une std::map de pointeur
    Par Zenol dans le forum SL & STL
    Réponses: 14
    Dernier message: 10/02/2006, 13h16
  2. std::map::find
    Par Blowih dans le forum SL & STL
    Réponses: 12
    Dernier message: 21/12/2005, 19h42
  3. Accession aux std::map triées ?
    Par Matthieu Brucher dans le forum SL & STL
    Réponses: 5
    Dernier message: 18/11/2005, 14h44
  4. Libérer des pointeurs dans une std::map
    Par GaldorSP dans le forum SL & STL
    Réponses: 2
    Dernier message: 09/07/2005, 14h42
  5. Trier un std::map selon les valeurs plutot que les clés
    Par dj.motte dans le forum SL & STL
    Réponses: 2
    Dernier message: 13/11/2004, 21h54

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