小编LRB*_*LRB的帖子

使用基类指针访问派生类成员

我正在用C++制作一个简单的控制台游戏

我想知道我是否可以在使用指向基类('Entity')的指针时从'entPlayer'类访问成员:

class Entity {
public:
    void setId(int id) { Id = id; }
    int getId() { return Id; }
protected:
    int Id;
};

class entPlayer : public Entity {
    string Name;
public:
    void setName(string name) { Name = name; }
    string getName() { return Name; }
};

Entity *createEntity(string Type) {
    Entity *Ent = NULL;
    if (Type == "player") {
        Ent = new entPlayer;
    }
    return Ent;
}

void main() {
    Entity *ply = createEntity("player");
    ply->setName("Test");
    ply->setId(1);

    cout << …
Run Code Online (Sandbox Code Playgroud)

c++

5
推荐指数
1
解决办法
8176
查看次数

标签 统计

c++ ×1