If you want to stick with C arrays, then you can either create an array in for each element in the array. Or you can use divide/times to get the positions in a single array, for multiple dimensions. Otherwise you can use a boost::multi_array if resizing is required.
No resizing required. What upsets me with vector<> is that from what I read I understood that it allocates more memory than necessary in case it needs to grow.
That seems stupid to me, as if I know how big I need the array to be, then theres no need to spend more memory than I need to..