ciao.
ho la seguente funzione per semplificare:
codice:
void CStreamIn::ReadBaseObjecP(COpenObject*& pObject)
{
	COpenObject* pObj = new COpenObject();
	pObject = pObj;
}
e questo è il chiamante:

codice:
pStreamIn->ReadBaseObjecP(p22);//p22 è un puntatore di un tipo derivato da COpenObject
pStreamIn->ReadBaseObjecP(p23);//p23 è un puntatore di un tipo derivato da COpenObject
mi dice che non è possibile convertire a COpenObject* per tutte e due le variabili.
Non capisco perchè dato che con i seguenti parametri della funzione non mi da errore:
codice:
void CStreamIn::ReadBaseObjecP(COpenObject* pObject)
{
	COpenObject* pObj = new COpenObject();
	pObject = pObj;
}
anche se in questo modo non riesco a "fare uscire" il puntatore valido dalla funzione, è per questo che ho pensato a *&.

Dove sta il problema? come posso fare?
grazie.