Compartir a través de


Punteros que se inicializan a objetos const

Un puntero a un objeto de const se puede inicializar con un puntero a un objeto que no es const, pero no viceversa.Por ejemplo, la inicialización siguiente es válida:

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

En el código anterior, el puntero pStandardWindow se declara como puntero a un objeto de const .Aunque StandardWindow no se declara como const, la declaración es aceptable porque no permite un objeto no declarado como acceso de const a un objeto de const .El inverso de esto es la siguiente:

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

El código anterior explícitamente declara StandardWindow como objeto de const .El inicializar el puntero que no es una constante pStandardWindow con la dirección de StandardWindow genera un error porque permite el acceso al objeto de const a través del puntero.Es decir, permite la eliminación del atributo de const del objeto.

Vea también

Referencia

Inicializadores