Files
42_SIDE_exam_05_cpp/cpp_module_01/ATarget.hpp
2022-12-09 13:39:46 +01:00

46 lines
618 B
C++

#ifndef ATARGET_HPP
# define ATARGET_HPP
# include <iostream>
# include <string>
class ASpell;
class ATarget {
private:
std::string type;
public:
ATarget()
{};
ATarget(ATarget const & other)
{
*this = other;
};
ATarget & operator=(ATarget const & other)
{
this->type = other.type;
return (*this);
};
ATarget(std::string const & type)
{
this->type = type;
};
~ATarget()
{};
std::string const & getType() const
{
return (this->type);
};
void getHitBySpell(ASpell const & aspell) const;
virtual ATarget * clone() const = 0;
};
#include "ASpell.hpp"
#endif