Ho una domanda sui puntatori C++ 11. In particolare, come si trasforma un puntatore univoco per la classe base nella classe derivata?std :: unique_ptr con classe derivata
class Base
{
public:
int foo;
}
class Derived : public Base
{
public:
int bar;
}
...
std::unique_ptr<Base> basePointer(new Derived);
// now, how do I access the bar member?
dovrebbe essere possibile, ma non riesco a capire come. Ogni volta che provo a utilizzare
basePointer.get()
Finisco con l'arresto anomalo dell'eseguibile.
Grazie in anticipo, qualsiasi consiglio sarebbe apprezzato.
Potrebbe mostrare una completa (ma minima) esempio del codice che causa il processo di crash del? 'basePointer.get()' da solo non è certamente un problema. – jogojapan
@jogojapan Ho risolto il problema. Stavo facendo un casting davvero strano con almeno 5 serie di parentesi. Sono abbastanza sicuro che fosse solo una cosa stupida, ma l'ho già cambiato e non ricordo cosa ho fatto. La risposta di Captain Obvlious ha funzionato per me comunque. Grazie per tutto il vostro aiuto! –