// Written by Hosung Leo Kim #include void grow( double* &arrPtr, int &max ) { double* tempArrPtr; tempArrPtr = new double [ 2 * max ]; for ( int i = 0; i < max; i++ ) tempArrPtr[i] = arrPtr[i]; delete [] arrPtr; arrPtr = tempArrPtr; max = 2 * max; } int main() { double* dblPtr; dblPtr = new double; *dblPtr = 1.2; cout << *dblPtr << endl; delete dblPtr; double* arrPtr; int max = 5; arrPtr = new double [ max ]; for ( int i = 0; i < max; i++ ) arrPtr[i] = i; for ( int i = 0; i < max; i++ ) cout << arrPtr[i] << " "; cout << endl; grow( arrPtr, max ); arrPtr[5] = 5; for ( int i = 0; i < 6; i++ ) cout << arrPtr[i] << " "; cout << endl; delete [] arrPtr; return 0; } /* /homes/home30/hkim16/107> a.out 1.2 0 1 2 3 4 0 1 2 3 4 5 /homes/home30/hkim16/107> */