Citat:
Predrag Damnjanovic:
Ahm.
Imam ovako:
void glutMouseFunc(void (GLUTCALLBACK *func)(int button, int state, int x, int y));
E sad, kad mu prosledim pointer na obicnu funkciju (koja nije u klasi) sve je OK!
Dakle, kada kazem:
glutMouseFunc(mouse);
to radi!
Ali, ako imam klasu 'gui_class', objekat 'gui' (klase 'gui_class') i onu istu funkciju mouse u klasi - i ako probam da je prosledim funkciji... ne ide.
Dakle, kada kazem:
glutMouseFunc(gui.mouse);
dobijam:
myep.cpp:42: no matches converting function `mouse' to type `void (*)(int, int, int, int)'
mye/gui/gui.h:103: candidates are: void gui_class::mouse(int, int, int, int)
Sta da radim?
Pri pozivu f-je clanice klase dolazi do prosledjivanja "skrivenog parametra" (this) samim tim te dve funkcije nisu iste, zato to radi samo sa statickim f-jama (njima se ne prosledjuje skriveni parametar).
Pozdrav Goran.
JokeJunky :)
Mrzim sublimirane marketinske poruke.