« Langage C++/Structures, unions et champs de bits » : différence entre les versions

Contenu supprimé Contenu ajouté
niveau des titres
Ligne 8 :
}}
 
=== Structures, unions et champs de bits ===
 
Les structures existent en C++ uniquement pour la compatibilité ascendante et ne servent plus qu'à quelques cas spécifique comme les unions, les champs de bits et quelques applications matérielles mais même dans ces circonstance il est possible de trouver des alternatives plus "Objet".
Ligne 23 :
* Les champs de bits.
 
==== Les Structures Simples ====
 
En C++ la structure simple à évoluée pour suivre un modèle plus "orienté objet" désormais il est possible et conseillé d'inclure les méthodes qui manipulent les données de la structure dans la structure elle-même. Chose qui était impossible en C. Au mieux on pouvais juste créer un pointeur sur un méthode mais cela n'était pas aussi trivial que ce que permet le C++.
Ligne 136 :
}}
 
===== Alternative à la structure =====
 
En fait je l'ai déjà dit la structure à été avantageusement remplacée par la classe déclaré par le mot clé class.
 
==== Les Unions ====
 
Les unions permettent de créer des espaces mémoire où l'on peut interpréter une même donnée de différentes manières ou de diviser une même donnée en sous ensembles. En fait une union déclare la disposition tous ses membres en partant de la même adresse contrairement à la structure qui dispose ses membres les uns à la suite des autres.
Ligne 213 :
}}
 
===== Alternative à l'union =====
 
Comme je l'ai dit plus haut, une classe et ses méthodes qui encapsulent les castings sera plus claire et propre que de manipuler la même variable avec plusieurs noms différents.
 
==== Champs de bits ====
 
Les champs de bits (ou "Drapeaux" de l'anglais "Flags" qui sont leur principale application industrielle) sont des structures qui ont la possibilité de regrouper au plus juste dans un nombre d'octet moindre plusieurs valeurs. Cela vient directement du monde de l'électronique. Il existe nombres d'exemples de ce fonctionnement dans l'industrie.
Ligne 246 :
}}
 
===== Alternative aux champs de bits =====
 
À l'instar de l'union, des énumérations et une classe et ses méthodes qui encapsulent les castings sera plus claire et propre que de manipuler plusieurs sous-noms différents d'une même variable.