Emmanuel Delahaye C is a sharp tool | Chronoklazm a écrit :
Bonjour voila j'aimerais savoir qu'est ce qu'un "type opaque" en C, j'ai trouvé ca dans un prog :
Code :
- /* Type opaque */
- typedef struct shape *Shape;
- extern struct shape {
- int type;
- int x, y;
- int width, height;
- int rayon;
- short angle;
- void (*draw) (struct shape *obj);
- };
|
Pourquoi "opaque" ? Qu'est ce que ca a de plus qu'un definition de type ?
|
C'est sûr que si les deux définitions sont dans le même header, l'opacité de la chose est limitée. De plus, je ne suis pas d'accord pour cacher le type 'pointeur'. Quand aux 'méthodes', si le type est vraiment opaque, on ne les verra pas de l'extérieur...
Je travaille plutôt comme ça:
http://mapage.noos.fr/emdel/tad.htm
---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
|