我正在使用glutMouseFunc(mouseFunction);作爲回調,但我不斷得到訪問衝突讀取位置0x000000b0在這一行glutMouseFunc(mouseFunction);使用glutMouseFunc獲取訪問違規讀取位置0x000000b0
我沒有使用任何glutInit函數,因爲它們干擾程序,它們不是必需的。
有沒有人知道爲什麼我在這個回調時出現這個錯誤?
這裏是我的初始化函數:
int Initialize()
{
/* Bunch of code here that is irrelevant to the problem.......*/
glutMouseFunc(mouseFunction); // Error occurs here.
}
這裏是我的mouseFunction:
void mouseFunction(int button, int state, int x, int y){
if(button==GLUT_MIDDLE_BUTTON && state==GLUT_DOWN)
{
printf("Pressed middle mouse button!");
}
}
我注意到,雖然一兩件事,在那裏當我打電話mouseFunction不會發生錯誤()作爲我的Initialize方法中的正常函數調用,但是一旦我嘗試使用glutMouseFunc(mouseFunction)的mouseFunction,就會發生錯誤,所以我認爲這更多的是glutMouseFunc的錯誤。
*我沒有使用任何glutInit函數,因爲它們干擾程序,它們不是必需的。*呃,什麼! –
崩潰時調用堆棧的內容是什麼?可能在GLUT中,因爲您沒有正確設置它然後爆炸。 – paulm
我的意思是說glutCreateWindow在很大程度上是干涉的,所以我就把它拋開了。 – Morelka