我有一个这样的对象试图在另一个类的函数中调用一个函数。该函数看起来像这样(属于'Player'类):
void play(Game *const currentGame, int x, int y);
当我尝试从另一个对象(Game类)中调用此函数时,如下所示:
player->play(this, x, y)
在编译过程中我遇到了这些错误:
Error 1 error C2061: syntax error : identifier 'Game' c:\users\shaqed\documents\visual studio 2013\projects\exe3\tictactoe.h 24 1 Exe3
Error 3 error C2511: 'void Player::play(Game *const ,int,int)' : overloaded member function not found in 'Player' c:\users\shaqed\documents\visual studio 2013\projects\exe3\tictactoe.cpp 40 1 Exe3
Error 4 error C2660: 'Player::play' : function does not take 3 arguments c:\users\shaqed\documents\visual studio 2013\projects\exe3\tictactoe.cpp 158 1 Exe3
我来自Java,所以也许我缺乏关于指针和引用的一些核心原则,但是我可以弄清楚为什么这里存在类型不匹配。
提前致谢
答案 0 :(得分:0)
我用相同的编译错误重复了你的问题。我想你已经忘记了在你的方法结束时添加身体。像:
void play(const Game * currentGame,int x,int y){}