This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
in204:seance1 [2019/09/16 11:42] 147.250.35.104 |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Séance 1 - Introduction aux objets ====== | ||
- | |||
- | ===== Supports de cours ===== | ||
- | |||
- | {{ :in204:1-_in204_-_td1_-_premiers_pas_avec_les_objets.pdf |Sujet de TD}} | ||
- | |||
- | |||
- | ===== Eléments syntaxiques ===== | ||
- | |||
- | ==== Déclaration des structures et des objets en C++ ==== | ||
- | |||
- | === Un rappel sur la déclaration des structures en C === | ||
- | |||
- | En C, une structure de données est défini comme suit : | ||
- | |||
- | <code cpp> | ||
- | |||
- | struct _Point { int x; int y } point; | ||
- | |||
- | </code> | ||
- | |||
- | Ceci défini d'une part un type nommé ''struct _Point'' et une variable ''point'' ayant comme type la structure de donnée ''struct _Point''. | ||
- | |||
- | Pour définir un type correspondant à la structure point, il est nécessaire en C d'écrire le code suivant : | ||
- | |||
- | <code cpp> | ||
- | |||
- | typedef struct _Point { int x; int y } Point; | ||
- | Point point; | ||
- | |||
- | </code> | ||
- | |||
- | === Déclaration des structures en C++ === | ||
- | |||
- | Dans ce cas, ''Point'' est défini comme un alias de type et désigne plus spécifiquement le type ''struct _Point''. Ecrire ''Point'' et ''struct _Point'' est équivalent. | ||
- | |||
- | En C++, il n'est plus nécessaire de préfixer le type ''_Point'' par ''struct''. Ainsi, il est possible d'écrire le code suivant : | ||
- | |||
- | <code cpp> | ||
- | |||
- | struct Point { int x; int y }; | ||
- | struct Point pointA; | ||
- | Point pointB; | ||
- | |||
- | </code> | ||
- | |||
- | === Initialisation des structures en C++ === | ||
- | |||
- | Pour initialiser les structures en C++, il suffit de fournir la liste des valeurs dans l'ordre dans lequel les champs sont définis. Ainsi écrire : | ||
- | |||
- | <code cpp> | ||
- | struct Point {int x; int y}; | ||
- | Point point = {1, 3}; | ||
- | std::cout << point.x << ", " << point.y << std::endl; | ||
- | </code> | ||
- | |||
- | correspond à initialiser les champs ''x'' et ''y'' de la structure ''point'' avec les valeurs ''1'' et ''3''. | ||
- | |||
- | |||
- | |||