The title pretty much says it all. Basically, is it legal to do this:
class Base { //stuff } class Derived: public Base { //more stuff } vector<
No, the Derived objects will be sliced: all additional members will be discarded.
Derived
Instead of raw pointers, use std::vector >.
std::vector >