Referencia colgante

En programación, si una estructura en el heap (lugar de donde se asigna memoria) es destruida antes de que todas las referencias (los apuntadores) a la misma sean destruidas, cualquier referencia restante se llama referencia colgante (Dangling Reference).

Lenguajes como C detectan en tiempo de ejecución estas referencias y anuncian un error.

Existen métodos para detectar estas referencias implementando un contador de referencias o un trazador de alcance en los lenguajes de programación que usan recolectores de basura.

Ejemplo

#include <stdlib.h>
{
    char *cp = malloc ( A_CONST );  /* cp apunta al espacio reservado en el heap A_CONST */
    /*... */
    free ( cp );      /* libero el espacio reservado, ahora cp es una referencia colgante */
    cp = NULL;        /* cp deja de ser una referencia colgante, puesto que ya no apunta a ningún sitio */
    /*... */
}

Enlaces externos

  • Pointers and Arrays (C99)
  • Topics on Pointers and Arrays
  • Dangling Pointer New Hacking Technique (Security)
  • Dangling pointers (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última).
Control de autoridades
  • Proyectos Wikimedia
  • Wd Datos: Q1642293
  • Commonscat Multimedia: Dangling Pointer / Q1642293

  • Wd Datos: Q1642293
  • Commonscat Multimedia: Dangling Pointer / Q1642293