0

我试图简单地将一个对象添加到一个类中的另一个对象,例如将播放器添加到工厂。

对于我的工厂.h

class Factory
{
public:

    Factory(void);
    ~Factory(void);
    void addMaze(Maze maze);
    void addPlayer(Player player);
    std::string getSessionTime();
    std::string setSessionTime(std::string time);

    private:

    int m_ID;
    Player m_player;
    Maze m_maze ;
    std::string m_SessionTime;
    std::string m_filePath [50];


    };

然后在我的工厂课上我有:

void Factory::addPlayer(Player player)
{
    m_player.add(player); //This is what I feel like I want to do
}

所以,我正在尝试将一个玩家添加到我的玩家列表中,但这不会做吗?我错过了一些非常明显的东西吗?如果有人可以帮助或指出我正确的方向,我将不胜感激。

4

1 回答 1

4

Player m_player;声明类型的数据成员Player,而不是玩家列表。如果您想要一个列表,请拥有一个成员std::list<Player>或更常见的std::vector<Player>.

你的功能可能看起来像

void Factory::addPlayer(const Player& player)
{
    m_players.push_back(player);
}
于 2013-02-08T19:55:18.887 回答