错误:“ {”令牌之前的预期unqualified-id

时间:2019-07-12 18:49:45

标签: c++

我有一个主文件,应该创建一个播放器并移动他。但是,当我编译它时,它给了我这个错误。我在做什么错了?

文件主文件:

...
#include "Player.h"
...
Player player;
player.move(1, 1);
std::cout << "Es funktioniert" << std::endl;
...

File Player.cpp:

#include "Player.h"

Player{
    int posx;
    int posy;

Player(int posx, int posy){
    this.posx = posx;
    this.posy = posy;
}

public:
    void move(int dx, int dy){
        posx += dx;
        posy += dy;
    }
};

File Player.h:

class Player{

public:
    Player();
    ~Player();
    void move(int dx, int dy);
};

我不确定是否应该在player.h文件中包含player.cpp文件?我尝试过,但是导致另一个错误。也许我的makefile文件做错了吗?

run: output
./output
rm *.o

output: main.o Player.o
    g++ -Wall main.o Player.o -o output

main.o: main.cpp
    g++ -c main.cpp

Player.o: Player.cpp
    g++ -c Player.cpp

1 个答案:

答案 0 :(得分:0)

Player.cpp应该看起来像这样

Player::Player(int posx, int posy) {
    this.posx = posx;
    this.posy = posy;
}

void Player::move(int dx, int dy) {
    posx += dx;
    posy += dy;
}

老实说,我认为我从未见过如此混乱的语法。您应该找到一本C ++书籍并进行一些学习。您不能只是化妆并希望它能起作用。