Я получаю сообщение об ошибке «Тип возврата не соответствует типу функции», когда я пытаюсь вернуть указатель на плеер в моей функции. Ошибка компилятора является:Тип возвращаемого значения C++ не соответствует типу функции
'&' : illegal operation on bound member function expression
CPlayer* CLevel::getPlayer()
{
return &player;
}
В файле заголовка, это определяется как:
private:
CPlayer player(Point p, CGame* game);
public:
CPlayer* getPlayer();
Любые идеи относительно того, почему я получаю эту ошибку и как я могу удалить его ?
EDIT:
конструктор Уровень:
CLevel::CLevel()
{
Point p;
this->game=game;
p.x=0;
p.y=0;
player(Point p, CGame* game) {};
memset(tiles, GROUND, sizeof(TileType)*GRID_HEIGHT*GRID_WIDTH);
}
Player.cpp конструктор:
CPlayer::CPlayer(Point pos, CGame* game)
{
this->game=game;
Point p;
p.x=0;
p.y=0;
setPosition(p);
}
Вы пытаетесь вернуть адрес функции-члена, а не указатель на объект. – chris
Как мне вернуть указатель на объект? (Я новичок на C++, так извините мое невежество) –
Вы тоже новичок в C? –