Ho una classe con una serie di puntatori agli oggetti che NON hanno un costruttore predefinito.Modo corretto per inizializzare l'array di boost :: scoped_ptr?
L'unico modo che ho trovato per "inizializzare" li sta usando swap()
come questo:
class Bar {
Bar(char * message) {};
}
class Foo
{
boost::scoped_ptr<Bar> arr[2];
Foo()
{
arr[0].swap(boost::scoped_ptr<Bar>(new Bar("ABC")));
arr[1].swap(boost::scoped_ptr<Bar>(new Bar("DEF")));
};
}
Questo si sente un po 'prolisso e goffo. Ho perso un modo più intelligente di farlo?
Come previsto, mi mancava il modo ovvio. Grazie! – Roddy
Grazie! Non posso credere di aver trascurato questo. – Vortico