Ho un dubbio, la funzione qui sotto può ricevere un oggetto di tipo A o qualcosa tipo derivato.Usando nuovo operatore per copiare un oggetto al mucchio senza conoscere il tipo
A *copyToHeap(A &obj) {
A *ptr=new A(obj);
return ptr;
}
Se chiamiamo così:
//B inherits from A
B bObj;
B *hPtr=copyToHeap(bObj);
l'oggetto puntato da hPtr
è in realtà di tipo A o B? È sicuro farlo?
Mi dispiace, ho scritto il codice dalla memoria e non ho potuto provare a comile. – jlledom