C++ separates the issue of allocating an array from the issue of using an array. Once you have an array, what you actually have is a pointer to the first thing in the array. C++ does not distinguish between a pointer to one variable and a pointer to a whole array of variables!