int max = 10; // give me 10 class objects please!
ClassA *pA = NULL; // you want a pointer here not a real instantiation - correct thing is to initialize the pointer to NULL (well done)
pA = new ClassA[max];
[...]do stuff
delete[] pA; // important to get memory cleaned up again
Well in your code even the first line is just....wrong! You cant tell an actual object to be NULL. A pointer yes, but object no! As I stated before I never saw a new directive like this before...maybe someone else has a clue on this one - I don't