If the type in question has an no arguments constructor, use new[]
:
Object2* newArray = new Object2[numberOfObjects];
don’t forget to call delete[]
when you no longer need the array:
delete[] newArray;
If it doesn’t have such a constructor use operator new
to allocate memory, then call constructors in-place:
//do for each object
::new( addressOfObject ) Object2( parameters );
Again, don’t forget to deallocate the array when you no longer need it.