les pointeurs en c. main () { float valeur; void* pointeur; } pointeur : valeur :
Post on 04-Apr-2015
128 Views
Preview:
TRANSCRIPT
Les pointeurs en C.
main (){
float valeur;void* pointeur;
}pointeur :
valeur :
Les pointeurs en C.
pointeur :
main (){
float valeur;void* pointeur;
pointeur = &valeur;}
valeur :
main (){
int nombre;float valeur;void* pointeur;
pointeur = &valeur;}
pointeur :
valeur :
nombre :
Les pointeurs en C.
main (){
int nombre;float valeur;void* pointeur;
pointeur = &valeur;pointeur = &nombre;
}
pointeur :
valeur :
nombre :
Les pointeurs en C.
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éfinition de la classe Point.
Allocation de mémoire en C++ : new et delete.
Déclaration de deux pointeurssur des objets Point.
class Point{
int x, y;};
main (){
Point* p1;Point* p2;
p1 = new Point;delete p1;
}
Allocation de mémoire en C++ : new et delete.
Allocation d'un objet Point : p1 le désigne.
class Point{
int x, y;};
main (){
Point* p1;Point* p2;
p1 = new Point;delete p1;
}
Allocation de mémoire en C++ : new et delete.
Libération de la mémoire. p1 nedésigne plus rien.
class Point{
int x, y;};
main (){
Point* p1;Point* p2;
p1 = new Point;delete p1;
}
Allocation de mémoire en C++ : new et delete.
p1 : ?
p2 : ?
class Point{
int x, y;};
main (){
Point* p1;Point* p2;
p1 = new Point;delete p1;
}
p1 :
p2 : ?
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 : ?
Allocation de mémoire en C++ : new et delete.class Point{
int x, y;};
main (){
Point* p1;Point* p2;
p1 = new Point;delete p1;
}
Des ensembles : tableaux et listes.
Des objets alloués en mémoire :
main (){
Point* p;
p = new Point;p = new Point;p = new Point;p = new Point;p = new Point;
}
Des ensembles : tableaux et listes.
main (){
Point p[10];
}
Des ensembles : tableaux et listes.
main (){
Point* p[10];
p[0] = new Point;}
Des ensembles : tableaux et listes.
main (){
Point* p[10];
p[0] = new Point;p[1] = new Point;
}
Des ensembles : tableaux et listes.
main (){
std::list<Point> points;}
Des ensembles : tableaux et listes.
main (){
std::list<Point> points;
Point p;
p.x = 10;p.y = 12;
points.push_back (p);}
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;
points.push_back (p);}
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);}
}
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);}
}
Une liste multiforme : problème
Polygone Point Ligne Ligne
x, y x1, y1x2, y2
x1, y1x2, y2x1, y1
x2, y2...xn, yn
Une liste multiforme : construction
Polygone Point Ligne Ligne
x, y x1, y1x2, y2
x1, y1x2, y2x1, y1
x2, y2...xn, yn
ref ref ref ref
Une liste multiforme.
? ? ? ?
ref ref ref ref
Une liste multiforme.
Figure Figure Figure Figure
ref ref ref ref
Une liste multiforme.
Figure
Polygone Point Ligne Ligne
x, y x1, y1x2, y2
x1, y1x2, y2x1, y1
x2, y2...xn, yn
Une liste multiforme.
Figure
Polygone Point Ligne Ligne
x, y x1, y1x2, y2
x1, y1x2, y2x1, y1
x2, y2...xn, yn
couleur
Une liste dans une structure.class Polygone{ int x1, y1; int x2, y2; int x3, y3; ...};
main (){
Polygone poly;
poly.x1 = ...;poly.y1 = ...;etc...
}
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...
}
top related