La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Les pointeurs en C. valeur : main () { float valeur; void* pointeur; }

Présentations similaires


Présentation au sujet: "Les pointeurs en C. valeur : main () { float valeur; void* pointeur; }"— Transcription de la présentation:

1 Les pointeurs en C. valeur : main () { float valeur; void* pointeur; }

2 Les pointeurs en C. valeur : main () { float valeur; void* pointeur;
pointeur = &valeur; } pointeur :

3 Les pointeurs en C. nombre : main () valeur : { int nombre;
float valeur; void* pointeur; pointeur = &valeur; } valeur : pointeur :

4 Les pointeurs en C. nombre : main () { int nombre; float valeur;
void* pointeur; pointeur = &valeur; pointeur = &nombre; } valeur : pointeur :

5 Allocation de mémoire en C++ : new et delete.
Définition de la classe Point. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; }

6 Allocation de mémoire en C++ : new et delete.
class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } Déclaration de deux pointeurs sur des objets Point.

7 Allocation de mémoire en C++ : new et delete.
class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } Allocation d'un objet Point : p1 le désigne.

8 Allocation de mémoire en C++ : new et delete.
class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } Libération de la mémoire. p1 ne désigne plus rien.

9 Allocation de mémoire en C++ : new et delete.
class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } p1 : ? p2 : ?

10 Allocation de mémoire en C++ : new et delete.
class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } p1 : p2 : ?

11 Allocation de mémoire en C++ : new et delete.
class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } p1 : p2 : ?

12 Des ensembles : tableaux et listes.
Des objets alloués en mémoire : main () { Point* p; p = new Point; }

13 Des ensembles : tableaux et listes.
main () { Point p[10]; }

14 Des ensembles : tableaux et listes.
main () { Point* p[10]; p[0] = new Point; }

15 Des ensembles : tableaux et listes.
main () { Point* p[10]; p[0] = new Point; p[1] = new Point; }

16 Des ensembles : tableaux et listes.
main () { std::list<Point> points; }

17 Des ensembles : tableaux et listes.
main () { std::list<Point> points; Point p; p.x = 10; p.y = 12; points.push_back (p); }

18 Des ensembles : tableaux et listes.
main () { std::list<Point> points; Point p; p.x = 10; p.y = 12; points.push_back (p); p.x = 11; p.y = 13; }

19 Des ensembles : tableaux et listes.
main () { std::list<Point> points; for (i = 0; i < 10 ; i++) Point p; p.x = i; p.y = i+1; points.push_back (p); }

20 Des ensembles : tableaux et listes.
main () { std::list<Point*> points; for (i = 0; i < 10 ; i++) Point* p = new Point; p->x = i; p->y = i+1; points.push_back (p); }

21 Une liste multiforme : problème
Polygone Point Ligne Ligne x1, y1 x2, y2 x1, y1 x2, y2 x, y x1, y1 x2, y2 ... xn, yn

22 Une liste multiforme : construction
ref ref ref ref Polygone Point Ligne Ligne x1, y1 x2, y2 x1, y1 x2, y2 x, y x1, y1 x2, y2 ... xn, yn

23 Une liste multiforme. ref ref ref ref ? ? ? ?

24 Une liste multiforme. ref ref ref ref Figure Figure Figure Figure

25 Une liste multiforme. Figure Polygone Point Ligne Ligne x1, y1 x2, y2
... xn, yn

26 Une liste multiforme. Figure couleur Polygone Point Ligne Ligne x1, y1
... xn, yn

27 Une liste dans une structure.
class Polygone { int x1, y1; int x2, y2; int x3, y3; ... }; main () { Polygone poly; poly.x1 = ...; poly.y1 = ...; etc... }

28 Une liste dans une structure.
class Polygone { std::list<Point> points; }; main () { Polygone poly; poly.points.push_back (1,2); Poly.points.push_back (2,5); etc... }


Télécharger ppt "Les pointeurs en C. valeur : main () { float valeur; void* pointeur; }"

Présentations similaires


Annonces Google