Copy Constructor ?

Kkeyser Messages postés 1 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 15 février 2004 - 15 févr. 2004 à 19:11
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 15 févr. 2004 à 23:12
Bonjour,

J'ai besoin pour mon programme de stocker une liste de points. Pour cela, j'utilise CList et CPoint comme suit :

typedef CList<CPoint,CPoint> Listepoints;

J'utilise ce type dans une classe pour une des variables membres. Seulement quand je crée une fonction qui permet de retourner une variable de type ListePoints, j'ai une erreur à la compilation : No copy constructor available.

Voilà la fonction en question :
Listepoints m_MaListe;
.....
.....

Listepoints CMyClass::GetMaListe()
{
return m_MaListe;
}

J'ai cherché dans l'aide de Visual C++ mais en vain, je ne m'en sors pas. Pourriez-vous m'aider ?

1 réponse

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
15 févr. 2004 à 23:12
La classe Clist ne permet pas de recopier directement une liste. Retourne une réfernce ou un pointeur, ça sera plus simple que de reconstruire une liste an copiant chacun de ses éléments.

Listepoints& CMyClass::GetMaListe()
{
return m_MaListe;
}

Par contre, si tu modifie la variable retournée, cela va modifier les éléments de la liste de la classe.

La classe CArray permer de recopier un tableau intégralement grâce à la methode Copy.
0
Rejoignez-nous