Let's take an example, where the function is called repeatedly, many times.
I'm assuming here that the delete  is not done.
Say the starting size is 1000 elements.
So initially that is the amount of memory in use.
Then the first time the function is called, it allocates 1001 elements. Total memory used is 2001 elements.
Call the function again, array size = 1002, memory used = 3002.
Call it 1000 times, the array has increased from original 1000 to now 2000.
But how much memory has been used? 1501500 elements have been allocated. That is, only 0.13% of the memory allocated is actually in use. The other 99.87% is lost - until the program ends.