PDA

Visualizza la versione completa : Costruttori di classi


Jar
25-04-2008, 12:20
Salve... mi serve un consiglio tecnico


Vorrei nel poter inizializzare l'attributo left di Ass con l'indirizzo della classe ID nel costruttore di Ass ....

class ID :public Parser <tipo> {
ID(Identifier*);
Identifier* identificatore;
}

class Ass: public Comando <tipo> {

public:
Ass( ID,Parser * exp); // ID per far capire quello ke vorrei fare
Identifier* left;
Parser* right;
};

Questo mi serve per creare un albero di assegnamento avente nodo SX una classe IDENTIFICATORE( gi creata) e come nodo DX una espressione.

Attendo risposta grazie

mondobimbi
25-04-2008, 12:39
non chiaro quello che vuoi fare, se vuoi assegnare a left il membro identificatore di ID allora prima di tutto devi rendere tale membro pubblico, o creare un metodo di accesso al questo.
Fatto questo, potresti passare un riferimento a ID al costruttore di Ass come qui sotto.



class Parser {
};

class Comando {
};

class Identifier {
};

class ID : public Parser {
public:
ID (Identifier * );
Identifier* identificatore;
};

class Ass: public Comando {

public:

Ass( ID & id, Parser * exp) : left(id.identificatore), right(exp)
{}

Identifier* left;
Parser* right;

};

int main ()
{
}

Jar
25-04-2008, 12:48
Si io volevo fare proprio questo..a parte il fatto del public, non mi veniva in mente il fatto del & ...thanks

Loading