Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Ownership, estructuras opacas y TADs

Puente entre memoria dinámica y abstracciones de datos

Universidad Nacional de Río Negro

Prerrequisitos: memoria dinámica, struct, doble indirección y 2_tad.md.

Ownership, estructuras opacas y TADs

Este es el destino de los patrones de creación/destrucción que aparecen en el Bloque 2. En un TAD no basta con saber usar malloc: la interfaz debe declarar quién posee cada recurso, cuándo se transfiere la propiedad y qué ocurre ante un fallo parcial.

Separación de responsabilidades

Patrón mínimo

typedef struct secuencia secuencia_t;

secuencia_t *secuencia_crear(void);
void secuencia_destruir(secuencia_t **secuencia);

El destructor recibe doble puntero cuando debe anular la variable del cliente. Los callbacks de destrucción, comparación y visita se estudian junto con la genericidad del TAD, no en el capítulo introductorio de struct.