Voilà je suis dans les const. Je suis le support de cours d'Antoine Mahul (http://frog.isima.fr/antoine/avance.shtml).
Ya un truc qui m'echappe. Si vous pouviez m'expliquer ce serait sympa..
Voilà son explication:
Code :
- const double pi = 3.14159; // Déclaration d'un double constant
- const double * ptr1 = 0; // Pointeur (non constant) sur un
- // double constant initialisé au pointeur nul
- ptr1 = π // OK
- *pi = 12; // Erreur (tentative de modification de
- // l'objet pointé)
- const double e = 2.71828; // Déclaration d'un autre double constant
- ptr1 = &e // OK (modification de la valeur du pointeur)
|
le
me pose problème, sachant que pi n'est pas un pointeur, je ne vois pas ce qu'il veut faire ?!
plus loin :
Code :
- // Déclaration de deux double
- double x = 0.0, y = 0.0;
- // Déclaration d'un pointeur constant initialisé avec l'adresse de x
- Point *const ptr2 = &x;
- *ptr2 = pi; // OK
- // (modification de l'objet pointé, x prend la valeur de pi
- ptr2 = &y; // Erreur
- //(tentative de modification de la valeur du pointeur)
|
Je ne comprend pas pourquoi il veut mettre l'adresse d'un double dans un pointeur de Point (Point étant une classe définie précedemment).
Merci de vos explications...