[c++] Dubbio su cast
Buonasera
mi trovo in questa condizione:
ora io voglio eseguire l'upgrade di uno o tutti gli oggetti contenuti in v e farli diiventare di tipo C.
è giusto fare così?:
o devo creare un oggetto C contenente B, cancellare l'oggetto in classe B esistente, rimpiazzarlo col nuovo C ?
spero si sia capito
mi trovo in questa condizione:
class A //.... class B:public class A //... class C:public class B //... vector<A*>* v //contenete oggetti di tipo B
ora io voglio eseguire l'upgrade di uno o tutti gli oggetti contenuti in v e farli diiventare di tipo C.
è giusto fare così?:
for (it=v->begin();it!=v->end();it++) static_cast <C>(**it);
o devo creare un oggetto C contenente B, cancellare l'oggetto in classe B esistente, rimpiazzarlo col nuovo C ?
spero si sia capito

Risposte
non so se in c++ è permesso ma generalmente la modifica di una collection (anche se un vettore) in un ciclo iterativo non è mai un operazione consigliata, sarebbe meglio la creazione di un nuovo oggetto C in cui inserisci gli elementi di B castati a C imho
hum!
grazie
grazie