CPP03 1.0
読み取り中…
検索中…
一致する文字列を見つけられません
DiamondTrap.hpp
[詳解]
1/* ************************************************************************** */
2/* */
3/* ::: :::::::: */
4/* DiamondTrap.hpp :+: :+: :+: */
5/* +:+ +:+ +:+ */
6/* By: kamitsui <kamitsui@student.42tokyo.jp> +#+ +:+ +#+ */
7/* +#+#+#+#+#+ +#+ */
8/* Created: 2025/05/12 17:28:30 by kamitsui #+# #+# */
9/* Updated: 2025/05/15 13:05:06 by kamitsui ### ########.fr */
10/* */
11/* ************************************************************************** */
12
23#ifndef DIAMONDTRAP_HPP
24#define DIAMONDTRAP_HPP
25
26#include "FragTrap.hpp"
27#include "ScavTrap.hpp"
28#include <iostream>
29#include <string>
30
39class DiamondTrap : public FragTrap, public ScavTrap {
40 public:
41 static const unsigned int defaultHitPoints = FragTrap::defaultHitPoints;
44
45 private:
46 std::string name; // DiamondTrap's private name
47
48 public:
50 DiamondTrap(const std::string &name);
51 DiamondTrap(const DiamondTrap &other);
52 DiamondTrap &operator=(const DiamondTrap &other);
53 virtual ~DiamondTrap();
54
55 void attack(const std::string &target); // Use ScavTrap's attack : not over ride
56 virtual const std::string &getName() const; // name of DiamondTrap
57 const std::string &getClapTrapName() const; // name of ClapTrap
58
59 void whoAmI();
60};
61
62#endif
Represents a DiamondTrap robot, inheriting from both FragTrap and ScavTrap.
void attack(const std::string &target)
Attack function implementation for DiamondTrap, using ScavTrap's attack.
DiamondTrap()
Default constructor implementation for DiamondTrap.
virtual const std::string & getName() const
Gets the DiamondTrap's private name.
virtual ~DiamondTrap()
Virtual destructor implementation for DiamondTrap.
static const unsigned int defaultAttackDamage
DiamondTrap & operator=(const DiamondTrap &other)
Copy assignment operator implementation for DiamondTrap.
static const unsigned int defaultHitPoints
void whoAmI()
whoAmI function implementation for DiamondTrap.
const std::string & getClapTrapName() const
Gets the ClapTrap's name associated with the DiamondTrap.
static const unsigned int defaultEnergyPoints
Represents a FragTrap robot, a specialized type derived from ClapTrap.
Definition FragTrap.hpp:38
static const unsigned int defaultHitPoints
Definition FragTrap.hpp:40
static const unsigned int defaultAttackDamage
Definition FragTrap.hpp:42
Represents a ScavTrap robot, a specialized type derived from ClapTrap.
Definition ScavTrap.hpp:38
static const unsigned int defaultEnergyPoints
Definition ScavTrap.hpp:41
Header file for the FragTrap class, a derived class of ClapTrap.
Header file for the ScavTrap class, a derived class of ClapTrap.