Bonjour à tous,

J'aimerai pouvoir sérialiser une classe CClass1 qui contient, entre autre un tableau m_tabClass2, variable membre qui est une CArray <CClass2*,CClass2*>, template CArray qui contient des pointeurs vers des objets CClass2.
CClass2 est une classe dérivée de CObject.

Dans la méthode Serialize (CArchive) de CClass1, j'ai donc écrit :
m_tabClass2.Serialize(ar) et j'espère ainsi appeler la méthode CClass2::Serialize(CArchive ar). Or cela ne marche pas et je ne sais pas pourquoi...

si j'ai un tableau CObArray m_tabObject et que je fais m_tabObject.serialize(ar) dans le serialize de CClass1, la méthode de serialisation de l'object stocké ds le CObArray est pourtant bien appelé...

Une solution que j'ai trouvé est donc de caster mes objets CClass2 en CObject (puisque CClass2 dérive de Cobject), de les stocker dans un tableau CObArray, et d'appeler la méthode de sérialisation sur ce tableau.. vous avouerez que ce n'est pas très très propre...

Ensuite, deuxième problème, dans cette clase CClas1, j'ai également un autre tableau m_tabPoint, de type CArray<CPoint*,CPoint*>. Ma solution précédemment évoqué tombe malheureusement à l'eau car CPoint ne dérive pas de CObject...

Ma question est donc la suivante : comment sérialiser un objet de type CArray<myClass1*,myClass1*> où myClass1 est dérivée de Cobject ou non (comme CPoint par exemple...)

Merci d'avance pour votre aide!!