[Tech] Rompicapo per programmatori C++

Giancarlo Martini g-martini@mcgsoft.net
Dom 14 Apr 2002 09:59:53 CEST


Saturday, April 13, 2002, 2:15:02 PM, hai scritto:

S> Sto facendo un programma in C++ ed ho un problema che non riesco
S> a risolvere.
S> Devo definire un puntatore al costruttore di una classe ma non
S> so come fare:
S> Prendiamo il seg. esempio:

S> ci sono tre classi cosi definite:

S> class C1
S> {
S>     int i;

S>     C1() : i(0) {}
S> }

S> class C2
S> {
S>     char j;

S>     C2() : j(0) {}
S> }

S> class C3
S> {
S>     char *s;

S>     C3() : s(NULL) {}
S> }

S> <puntatore costruttore> pCostruttore;

S> voglio definire la seguente funzione che mette in pCostruttore
S> il costruttore del numero della classe passata come argomento

S> void funz(int classe)
S> {
S>     if (classe = 1)
S>         pCostruttore = C1::C1;
S>     else if (classe = 2)
S>         pCostruttore = C2::C2:
S>     else
S>         pCostruttore = C3::C3;
S> }

Non  capisco void funz(int classe) comunque sarebbe meglio dichiarare
una classe base ed utilizzare un puntatore ad essa. Inoltre non credo
si possa prendere l'indirizzo di una classe, ma solo di un oggetto
definito.

PS
Forse non ho capito cosa vuoi...

-- 
Giancarlo Martini  
http://www.mcgsoft.net              
mailto:g-martini@mcgsoft.net





Maggiori informazioni sulla lista flug-tech