C ++在singleton-Program中传递指针已停止工作?

时间:2015-09-02 17:33:26

标签: c++ pointers singleton

所以我尝试开发一个类Scoreboard和一个类Player和一个类Player2(All singleton),每个play都应该拥有一个指向这个Scoreboard的指针。 当我运行我的程序时,它停止工作,我相信这是因为指针,因为它发生在我试图访问播放器指向的记分板时。 所以基本的想法是:

class Player
{
private :
    static Player *instance;
    Player(Scoreboard* sb2)
    {
        s=sb2;
    }
public:

    Scoreboard *s;

    static Player *ins(Scoreboard* sb)
    {
        if (NULL==instance)
        {
            instance=new Player(sb);
        }
        return instance;
    }

};
Player* Player::instance=NULL;

在main函数中,调用将是:

Scoreboard* si= Scoreboard::startGame();
ply1=Player::ins(si);

1 个答案:

答案 0 :(得分:0)

修改

Player* Player::instance=NULL;

Player Player::*instance=NULL;