我不确定我的编译器在这里想要什么。它给我以下错误
error C2065: 'newGame' : undeclared identifier
相关代码:
void createMenu() {
MenuItem newGameOption = MenuItem("../art/newGame.bmp", newGame);
}
//start a new game
void newGame() {
}
在MenuItem.h中
class MenuItem {
bool selected = false;
std::string path; //Path to menu item's art
void *pf(); //Function to execute upon selection
public :
MenuItem(const char*, void pf()); //constructor
};
最佳答案
编译器错误似乎很简单。无论“ newGame”是什么,编译器对此一无所知。这是它第一次看到该名称的任何东西。
您显然在文件的后面定义了newGame()函数,这一事实显然无济于事。在编译器尝试编译第一个函数时,它尚未读取它。
以下是一些适合您的Google食物:“转发声明”。放:
void newGame();
在createMenu()之前,以便编译器知道它是什么。
关于c++ - 未声明的标识符(newGame)-用作参数的指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27673413/