Home
Accesso / Registrazione
 di 

Implementazione della sottoclasse. Assegnamenti

Implementazione della sottoclasse. Assegnamenti

L'assegnamento è una operazione binaria. Il riconoscitore garantisce che vi sia una variabile come operatore sinistro e una somma come operatore destro. Di conseguenza, quello che abbiamo necessità di implementare è di fatto l'operatore assegnazione, ossia la funzione dinamicamente linkata all'interno del componente .exec della descrizione di tipo

#include "value.h"
#include "value.r"
static double doAssign (const void * tree)
{
return value(left(tree)) = exec(right(tree));
}
static struct Type _Assign = { mkBin, doAssign, freeBin };
const void * Assign = & _Assign;

Condividiamo il costruttore e il distruttore per Bin che, di conseguenza, deve essere reso globale nell'implementazione delle operazioni aritmetiche. Dobbiamo inoltre condividere struct Bin e le funzioni di accesso left() e right(). Tutto ciò viene esportato con il file interfaccia in value.h e il file di rappresentazione value.r. La nostra funzione di accesso value() per la struct Var permette di effettuare modifiche così l'assegnazione diventa semplice da implementare.

 

 

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

Ci sono attualmente 4 utenti e 62 visitatori collegati.

Ultimi Commenti