Listing 25 Output from Listing 24

allocating a T:
T::new (allocating 2 bytes)
T::T()

allocating an array of 3 T's:
T::new[] (allocating 10 bytes)
T::T()
T::T()
T::T()

allocating a T with initialization:
T::new (allocating 2 bytes)
T::T(int)

allocating a U:
T::new (allocating 4 bytes)
T::T(int)
U::U()

allocating an array of 2 U's:
T::new[] (allocating 12 bytes)
T::T(int)
U::U()
T::T(int)
U::U()

deleting a T:
T::~T()
T::delete

deleting the array of 3 T's:
T::~T()
T::~T()
T::~T()
T::delete[]

deleting another T:
T::~T()
T::delete

deleting the U:
U::~U()
T::~T()
T::delete

deleting the array of 2 U's:
U::~U()
T::~T()
U::~U()
T::~T()
T::delete[]