|
|
|
|
|
|
|
return arr[i];
}
//******************************************************************
void DynArray::Store( /* in */ int val,
/* in */ int i )
// Precondition:
// val and i are assigned
// Postcondition:
// IF i >= 0 && i < size
// arr[i] == val
// ELSE
// Program has halted with error message
{
if (i < 0 || i >= size)
{
cout < ** In Store function, invalid index:
< i < ** < endl;
exit(1);
}
arr[i] = val;
}
//******************************************************************
void DynArray::CopyFrom( /* in */ DynArray array2 )
// Postcondition:
// Array pointed to by arr@entry is no longer on free store
// && IF free store has room for an array of size array2. size
// New array of size array2.size is created on free store
// && arr == base address of new array
// && size == array2.size
// && arr[0..size-1] == array2.arr[0..size-1]
// ELSE
// Program has halted with error message
{
int i; // Array index
delete [] arr;
size = array2. size;
arr = new int[size];
if (arr == NULL)
{
|
|
|
|
|
|