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 :

VC7, template et const


Sujet :

MFC

  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    F�vrier 2004
    Messages
    582
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 582
    Par d�faut VC7, template et const
    Bonjour,
    Toujours suite au passage de VC6 � VC7, j'ai une erreur de compil.
    J'ai dans l'ent�te de ma classe:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    CArray<CAccessRecord, CAccessRecord &>	m_Records;
    Ensuite j'ai la d�claration de mon constructeur par copie comme suit :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    CAccessTable::CAccessTable(const CAccessTable &rcModel)
    {
    int size = rcModel.m_Records.GetSize();
    for (int i = 0; i< size; i++)
    {	
        m_Records.Add(rcModel.m_Records[i]);
    };
    }
    En VC6, cela ne posait pas de probl�me. En VC7, il me met l'erreur suivante :
    'CArray<TYPE,ARG_TYPE>::Add'*: impossible de convertir le param�tre 1 de 'const CAccessRecord' en 'CAccessRecord &'
    with
    [
    TYPE=CAccessRecord,
    ARG_TYPE=CAccessRecord &
    ]
    La conversion perd les qualificateurs

    Donc, le const pose probl�me mais je vois pas comment le contourner....


    Merci

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

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par d�faut
    Le second param�tre template de CArray est le type de param�tre que tu vas lui passer. Tu as sp�cifi� un passage par r�f�rence non constante, mais dans ton constructeur par copie tu vas lui envoyer des objets constants.

    Ceci devrait fonctionner :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    CArray<CAccessRecord, const CAccessRecord &> m_Records;
     
    // Ou bien (équivalent)
     
    CArray<CAccessRecord> m_Records;

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    F�vrier 2004
    Messages
    582
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 582
    Par d�faut C'�tait aussi simple que �a ...
    Comme d'habitude je cherchais quelque chose de compliqu�, alors que c'�tait si simple!!!
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    CArray<CAccessRecord, const CAccessRecord &> m_Records;
    Merci beaucoup!!!

  4. #4
    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
    Par d�faut
    salut ,
    �a serait pas mal que tu fasses une compile des problemes de portage des templates de vc6 a Vc7.

    sous forme de post a mettre par exemple dans le post it :
    http://www.developpez.net/forums/viewtopic.php?t=57435

    comme �a on pourra faire une synthese des problemes rencontres....

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. template specialization : const? unsigned? int(*|&)?
    Par ctxnop dans le forum Langage
    R�ponses: 3
    Dernier message: 30/01/2014, 16h17
  2. [template] passer un argument par valeur ou en const &
    Par m�phistopheles dans le forum C++
    R�ponses: 33
    Dernier message: 04/07/2010, 19h46
  3. D�finition const. & dest. d'une classe template
    Par KuroAkisame dans le forum Langage
    R�ponses: 4
    Dernier message: 02/09/2008, 16h26
  4. M�thode template const
    Par nikopol82 dans le forum Langage
    R�ponses: 7
    Dernier message: 17/04/2008, 14h30
  5. Fonctions template+friend sous VC7
    Par patapetz dans le forum MFC
    R�ponses: 12
    Dernier message: 24/09/2004, 11h16

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