Если в массиве будут сами классы, а не указатели на них, то будет некорректность если размеры классов отличаются (sizeoff) - например разное количество членов класса. Лучше делать так:
vector<Base*> v;
v.push_back(new DerivateOne);
v.push_back(new DerivateTwo);
for(auto b: v)
b->output();