我有一个基本实体系统的代码我正在测试
Enity.h
class Enemy
{
public:
void attack(Player player);
virtual void die();
protected: //Info variables
int attackDamage;
std::string name;
bool alive;
}
class ChildEnemy1 : public Enemy
{
name = "Enemy1" //Invalid
};
class ChildEnemy2 : public Enemy
{
name = "Enemy2" // Invalid
};
如何在不继承公共setter函数的情况下更改Info变量(attackDamage,name,alive) (保留封装)。
编辑:这不是一个重复的问题,因为我没有在SO
上找到对此问题的充分答案答案 0 :(得分:0)
初始化构造函数中的成员。
class ChildEnemy1 : public Enemy
{
ChildEnemy1() : name("Enemy1") {}
};