structure "flexible"

structure "flexible" - C - Programmation

Marsh Posté le 05-11-2009 à 22:23:34    

Hello,
 
Mes cours de C remontent à longtemps, longtemps avant JC (ou plutôt 10 ans). Je me souviens avoir appris à fare des structures "flexibles" (je précise plus bas ce que j'entends par là), le problème, c'est que j'ai oublié le vrai nom de cette technique, et donc c'est pas gagné de faire une recherche dans une table des matières ou sur le web.
 
Je vous explique ce que j'aimerais faire par un exemple:
Il s'agirait par exemple d'une structure pour définir des éléments géométriques. Il y aurait un champ enum nommée type pour indiquer le type de forme (ligne, rectangle, cercle, triangle). Mais ensuite, les autres champs de la structure dépendent du type de form.
Par exemple si test1.type==ligne, alors il y aurait les champs test1.p1x, test1.p1y  test1.p2x, test1.p2y pour les deux extrémités de la lignes. pour test2.type==cercle, il y aurait les champs test2.xc, test2.yc, test2.r, pour les coordonnées du centre et le rayon.
 
Comment appelle-t-on ces structures, dont les champs et leur types peuvent varier en fonction de ce qui est représenté?
 
Merci d'avance pour votre aide...

Reply

Marsh Posté le 05-11-2009 à 22:23:34   

Reply

Marsh Posté le 05-11-2009 à 23:30:46    

des unions ?
Un truc du genre:

Code :
  1. struct
  2. {
  3.   int type;
  4.   union{
  5.     struct Ligne ligne;
  6.     struct Rectangle rect;
  7.     struct Cercle cercle;
  8.   }object;
  9. }forme;


Message édité par sligor le 05-11-2009 à 23:31:47
Reply

Marsh Posté le 06-11-2009 à 07:47:44    

Ah c'est ça! Merci bien!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed