J'ai à utiliser des objets de type :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
// classe  de bases : 
class Obj_Base
{
};
class Node
{
};
 
// classe instanciées :
class Obj_1 : public Node, public ObjBase
{
};
class Obje_N : public Node, public ObjBase
Les Objet instancié devant être utilisés sour la forme Obj_Base (manipulations diverses) ou Node (Stockage et accès en mémoire).
Le pb est le suivant :
Accédant aux objets sous la forme Node, il m'est impossible de les transtyper directement en Obj_Base . Si, par contre je connais précisément la classe instanciée par de pb.

J'ai remarqué que lorsque je transtype un objet de Obj_N vers Node (en vue de le stocker), le pointeur change d'adresse.
Est-ce un mécanisme normal ?
Y a-t-il quelque chose qui m'échappe ? (vraisemblablement)
Enfin quel moyen pour contourner le pb ?

j'espère avoir été assez clair...