Partager via


Initialiser des pointeurs vers des objets const

Un pointeur vers un objet de const peut être initialisé avec un pointeur vers un objet qui n'est pas const, mais pas l'inverse.Par exemple, l'initialisation suivante est conforme :

Window StandardWindow;
const Window* pStandardWindow( &StandardWindow );

Dans le code précédent, le pointeur pStandardWindow est déclaré en tant que pointeur vers un objet de const .Bien qu' StandardWindow n'est pas déclaré comme const, la déclaration est acceptable car elle ne permet pas à un objet non déclaré comme accès de const à un objet de const .L'inverse de cela est la suivante :

const Window StandardWindow;
Window* pStandardWindow( &StandardWindow );

Le code précédent déclare explicitement StandardWindow comme un objet de const .Initialiser le pointeur non constante pStandardWindow avec l'adresse d' StandardWindow génère une erreur car elle permet l'accès à l'objet de const via le pointeur.Autrement dit, il autorise la suppression de l'attribut de const de l'objet.

Voir aussi

Référence

Initialiseurs