我正在尝试让这段代码正常运行,但遇到了这个错误,我不知道如何修复。我试过搜索谷歌,但没有任何帮助。
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 ^
}
这只是代码的一部分......突出显示的地方的错误。
答案 0 :(得分: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
的成员。