我有课,Player
, 带有成员变量 Creature *character
这将指向 Elf : public Creature
派生类。
我希望能够申报 Player
对象,然后让其成员之一指向 Elf
并获取信息。
我知道数据成员应该是私有(private)的,但这是特例还是我如何从 Elf
中获取信息?来 self 的成员 main
功能?
void Player::set_character(Creature &c)
{
character = &c;
}
...
Player me;
Elf me_elf;
me.set_character(me_elf);
最佳答案
您可以通过 Player
的公共(public)方法执行此操作:
class Creature
{
public:
virtual void hello() const = 0;
};
class Player{
public:
void hello() const { charatcer->hello(); }
// other methods as before
private:
Creature* character;
};
关于c++ - 如何从另一个类中的私有(private)指针指向的类中获取私有(private)信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16621712/