feat: adding the operator '='

This commit is contained in:
Raphael 2025-02-10 11:13:57 +01:00
parent a909970d76
commit 2fc4472427
6 changed files with 37 additions and 6 deletions

View file

@ -6,7 +6,7 @@
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/01/10 13:59:49 by rparodi #+# #+# */
/* Updated: 2025/02/10 10:55:30 by rparodi ### ########.fr */
/* Updated: 2025/02/10 11:13:02 by rparodi ### ########.fr */
/* */
/* ************************************************************************** */
@ -39,6 +39,15 @@ ClapTrap::ClapTrap(ClapTrap const &copy) {
std::cout << "\n[Init] ClapTrap (copy):\n\t" << "Name: " << _name << std::endl;
}
ClapTrap& ClapTrap::operator=(ClapTrap &assign) {
_name = assign._name;
_hit_point = assign._hit_point;
_energy_point = assign._energy_point;
_attack_damage = assign._attack_damage;
std::cout << "\n[Init] ClapTrap (assign):\n\t" << "Name: " << _name << std::endl;
return (assign);
}
ClapTrap::~ClapTrap() {
std::cout << "\n[Delete] ClapTrap:\n\t" << "Name: " << _name << std::endl;
}

View file

@ -6,7 +6,7 @@
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/01/10 14:54:21 by rparodi #+# #+# */
/* Updated: 2025/02/10 10:24:18 by rparodi ### ########.fr */
/* Updated: 2025/02/10 11:10:09 by rparodi ### ########.fr */
/* */
/* ************************************************************************** */
@ -20,6 +20,7 @@ class ClapTrap {
ClapTrap();
ClapTrap(ClapTrap const &copy);
ClapTrap(std::string name);
ClapTrap& operator=(ClapTrap &assign);
~ClapTrap();
void attack(const std::string& target);
void takeDamage(unsigned int amount);

View file

@ -6,7 +6,7 @@
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/01/24 17:41:01 by rparodi #+# #+# */
/* Updated: 2025/02/10 10:55:37 by rparodi ### ########.fr */
/* Updated: 2025/02/10 11:13:33 by rparodi ### ########.fr */
/* */
/* ************************************************************************** */
@ -36,6 +36,15 @@ FragTrap::FragTrap(FragTrap const &copy) {
std::cout << "\n[Init] FragTrap (copy):\n\t" << "Name: " << _name << std::endl;
}
FragTrap& FragTrap::operator=(FragTrap &assign) {
_name = assign._name;
_hit_point = assign._hit_point;
_energy_point = assign._energy_point;
_attack_damage = assign._attack_damage;
std::cout << "\n[Init] FragTrap (assign):\n\t" << "Name: " << _name << std::endl;
return (assign);
}
FragTrap::~FragTrap() {
}

View file

@ -6,7 +6,7 @@
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/01/20 23:13:16 by rparodi #+# #+# */
/* Updated: 2025/02/10 10:28:51 by rparodi ### ########.fr */
/* Updated: 2025/02/10 11:10:58 by rparodi ### ########.fr */
/* */
/* ************************************************************************** */
@ -21,6 +21,7 @@ class FragTrap: public ClapTrap {
FragTrap();
FragTrap(FragTrap const &copy);
FragTrap(std::string name);
FragTrap& operator=(FragTrap &assign);
~FragTrap();
void highFivesGuys(void);
protected:

View file

@ -6,7 +6,7 @@
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/01/24 17:41:01 by rparodi #+# #+# */
/* Updated: 2025/02/10 10:56:14 by rparodi ### ########.fr */
/* Updated: 2025/02/10 11:12:27 by rparodi ### ########.fr */
/* */
/* ************************************************************************** */
@ -39,6 +39,16 @@ ScavTrap::ScavTrap (std::string name) {
std::cout << "\n[Init] ScavTrap:\n\t" << "Name: " << _name << std::endl;
}
ScavTrap& ScavTrap::operator=(ScavTrap &assign) {
_name = assign._name;
_hit_point = assign._hit_point;
_energy_point = assign._energy_point;
_attack_damage = assign._attack_damage;
_gateKeeperMode = assign._gateKeeperMode;
std::cout << "\n[Init] ScavTrap (assign):\n\t" << "Name: " << _name << std::endl;
return (assign);
}
ScavTrap::~ScavTrap() {
}

View file

@ -6,7 +6,7 @@
/* By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/01/20 23:13:16 by rparodi #+# #+# */
/* Updated: 2025/02/10 10:43:14 by rparodi ### ########.fr */
/* Updated: 2025/02/10 11:10:27 by rparodi ### ########.fr */
/* */
/* ************************************************************************** */
@ -21,6 +21,7 @@ class ScavTrap : public ClapTrap {
ScavTrap();
ScavTrap(ScavTrap const &copy);
ScavTrap(std::string name);
ScavTrap& operator=(ScavTrap &assign);
~ScavTrap();
void guardGate();
protected: