everest% CC cubemain.C cube.C box.C cubemain.C: cube.C: box.C: everest% everest% a.out Default Box constructor, this = 0xffffffadb0 Default Cube constructor, this = 0xffffffadb0 Default Box constructor, this = 0xffffffadc0 Alternate Cube constructor, this = 0xffffffadc0 Default Box constructor, this = 0xffffffadd0 c1: I'm a cube. Each side has length=1. Serial number = 1 c2: I'm a cube. Each side has length=1.2. Serial number = 2 b: I am a box with length=1, height=2 and width=3. Serial Number = 3 === Report: There are 3 boxes in existence. A total of 3 boxes have been made. === Compare Cube c1 fits inside cube c2 Box b and cube c1 are incomparable Grow c1 I'm a cube. Each side has length=2. Serial number = 1 Volume of c1 is now 8 Shrink c2 I'm a cube. Each side has length=0.6. Serial number = 2 Volume of c2 is now 0.216 === Report: There are 3 boxes in existence. A total of 3 boxes have been made. === Box destructor, this = 0xffffffadd0 Cube destructor, this = 0xffffffadc0 Box destructor, this = 0xffffffadc0 Cube destructor, this = 0xffffffadb0 Box destructor, this = 0xffffffadb0 everest%