/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* Cat.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: aortigos type = "Cat"; this->brain = new Brain(); } Cat::~Cat() { std::cout << "Cat has been destroyed" << std::endl; delete (this->brain); } Cat::Cat(const Cat &other) : Animal(other) { std::cout << "Cat copied" << std::endl; this->brain = new Brain(*other.brain); } Cat& Cat::operator=(const Cat &other) { std::cout << "Cat copy assignment called" << std::endl; if (this != &other) { Animal::operator=(other); if (this->brain) delete (this->brain); this->brain = new Brain(*other.brain); } return (*this); } void Cat::makeSound() const { std::cout << "Meow!" << std::endl; }