Or a std::vector which is easier than using raw new[] and delete[]:
1 2 3 4 5 6 7 8 9 10
#include <vector>
//...
std::vector<int> my_vector;
my_vector.push_back(23); // my_vector[0] is now 23
my_vector.push_back(32); // my_vector[1] is now 32
my_vector[0] = 2; // my_vector[0] is now 2
// No need to delete[] or anything. Memory will be freed automatically.
#include <vector>
// ...
int size;
// ... (Get a value for 'size' somehow)
std::vector<int> myVector(size); // Initialize to 'size' elements
// Now use myVector just like an array
myVector[0] = 12;
myVector[3] = 89;
// etc.