-4

我试图让这段代码工作,但遇到了这个错误,我不知道如何修复。我试过搜索谷歌,但没有任何帮助。

Ghost::Ghost()
{
    ghost = SDL_LoadBMP("media/ghost.bmp");
    lightning = SDL_LoadBMP("media/light.bmp");
    monsterDead = false;
    deathCounted = false;

    posX = 4450;
    posY = 490;

    xVel = 200;
    yVel = 300;

    monsterPos = {posX, posY, 122, 130};
// Error Here    ^

}

这只是代码的一部分......突出显示的地方的错误。

4

1 回答 1

3

啊,是的,难以捉摸的缺少右括号错误。众所周知,这会困扰全世界的程序员,研究表明,可以通过在末尾添加右括号来解决:

Ghost::Ghost()
{
    ghost = SDL_LoadBMP("media/ghost.bmp");lightning = SDL_LoadBMP("media/light.bmp");monsterDead = false;deathCounted = false;

    posX = 4450;posY = 490;

    xVel = 200;yVel = 300;

    monsterPos = {posX, posY, 122, 130};//

} //<--- HERE!!!

根据您的编辑:

monsterPos = {posX, posY, 122, 130};

您的编译器似乎不支持,因为它不是初始化,而是赋值。您必须monsterPos一一分配成员。

于 2012-11-06T16:15:49.453 回答