Registros variantes poo

Solo disponible en BuenasTareas
  • Páginas : 2 (258 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de marzo de 2011
Leer documento completo
Vista previa del texto
Registros Variantes

Los registros variantes son una especie de sentencia “case” dentro de un registro y son muy útiles cuando tenemos ciertos atributos quesabemos de antemano que sólo usaremos en ciertas situaciones.

Los registros variantes ahorran memoria, porque como sólo una de las estructuras debidas dentro deellos puede usarse a la vez, el compilador sólo necesita reservar memoria para la mayor de ellas (en vez de tener que hacerlo para todos los componentes delregistro).

Registros Variantes Esta propiedad de compartición de espacio en memoria es similar a la de los bloques disjuntos en ALGOL. De hecho, también en el casode los registros variantes se permite el anidamiento.

Por tanto, los registros variantes son muy eficientes y seguros, porque sólo permiten al programadorrealizar operaciones que tengan algún significado dentro del contexto dado y que sean permisibles dentro del registro.

Sin embargo, el problema con esta estructurade datos es que no requiere ser inicializada. Esto significa que podríamos tener cualquier valor dentro de un registro variante después de modificar el valor deun campo identificador.

El acceso a variables no inicializadas puede dar lugar a que se usen valores que fueron dejados previamente en el bloque y quecompartían la misma zona de memoria. En el caso de los registros variantes, este valor puede incluso ser de un tipo diferente al esperado.

La raíz del problema es quelos registros variantes permiten una forma de “aliasing”, ya que los campos de las diferentes variantes son todos “alias” de las mismas posiciones de memoria.
tracking img