当我使用代码
cvCreateButton("button1",callbackButton2,NULL,CV_PUSH_BUTTON,1);
void callbackButton2(int state, void *pointer){
int i = 2;
return;
}
我在Visual Studios 2010中收到以下错误
错误C2065:“callbackButton2”:未声明的标识符
有人可以解释一下我在做错什么导致此错误
谢谢
最佳答案
根据提供的代码,似乎在第一行使用了callbackButton2
,但在第二行之后声明了callbackButton2
。
在大多数语言中,这样做不是合法的事情,因为在编译器确定可以使用它的上下文之前,标识符是无效的,这是声明标识符的作用
试试这个:
void callbackButton2(int state, void *pointer){
int i = 2;
return;
}
cvCreateButton("button1",callbackButton2,NULL,CV_PUSH_BUTTON,1);
在该代码示例中,标识符
cvCreateButton
在用作ojit_code函数的参数之前被声明为函数,因此应有效使用标识符