Home
Accesso / Registrazione
 di 

Programmazione orientata agli oggetti in ANSI-C. Gestione della Memoria

Programmazione orientata agli oggetti in ANSI-C. Gestione della Memoria

Abbiamo tralasciato di discutere un aspetto fondamentale: come si ottiene un set. Set è un puntatore, non un tipo definito da typedef; di conseguenza non possiamo definire variabili locali o globali di tipo Set.

Invece, abbiamo intenzione di utilizzare puntatori per far riferimento a set o ad elementi, e dichiariamo pertanto la sorgente e la destinazione di tutti i dati in new.h.

void * new (const void * type, ...);
void delete (void * item);

Proprio come in Set.h questo file è protetto da un simbolo di preprocessore NEW_H. Il testo qui sopra mostra solo le parti interessanti di ogni nuovo file, il dischetto sorgente contiene il codice completo di tutti gli esempi.
 
new() accetta un descrittore come Set e possibilmente più argomenti per l'inizializzazione e restituisce un puntatore al nuovo elemento - quest'ultimo con una rappresentazione conforme al descrittore. delete() accetta un puntatore originariamente prodotto da new() e ricicla le risorse associate.
 
new() e delete() sono presumibilmente il frontend alle funzioni ANSI-C chiamate calloc() e free(). Se è così, il descrittore deve indicare come minimo quanta memoria viene richiesta

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ultimi Commenti