This module focuses on inheritance in C++, using a hierarchy of robot classes (ClapTrap, ScavTrap, FragTrap, DiamondTrap) and introducing multiple inheritance challenges.
For each exercise, navigate to its folder, compile, and run:
📂 ex00
cd ex00
make
./claptrap
📂 ex01
cd ex01
make
./scavtrap
📂 ex02
cd ex02
make
./fragtrap
📂 ex03
cd ex03
make
./diamondtrap
ex00 — Aaaaand... OPEN!: Implement the ClapTrap class with name, hit points, energy points, and attack damage. Add attack, takeDamage, and beRepaired behaviors.
ex01 — Serena, my love!: Add the ScavTrap class, inheriting from ClapTrap, with unique messages and a guardGate() ability.
ex02 — Repetitive work: Add the FragTrap class, also inheriting from ClapTrap, with a highFivesGuys() special function.
ex03 — Now it’s weird!: Introduce DiamondTrap, using multiple inheritance from both ScavTrap and FragTrap. Add a private name and a whoAmI() function to show its identity.
If you have any questions or suggestions, feel free to connect: 🔗 LinkedIn: Valentina Nguyen 🙋♀️
This project was developed and tested on Linux (Ubuntu).