求助,在类里用setmousecallback报错
opencv吧
全部回复
仅看楼主
level 3
0crazy0ac0 楼主
如果放在主函数里就没有这个错误
d:\临时程序\test1\test1.1\image_processing.cpp(52): error C3867: “image_processing::on_mouse”: 函数调用缺少参数列表;请使用“&image_processing::on_mouse”创建指向成员的指针
CPP文件中定义:
头文件中定义:
2017年05月21日 08点05分 1
level 3
0crazy0ac0 楼主
另外,如果我把on_mouse函数设置成静态函数,那类里面的成员都不能用了。。有没有好的解决办法?
2017年05月21日 09点05分 2
level 1
怎么解决的?
2017年11月28日 11点11分 3
level 1
楼主问题解决了吗,我也遇到了同样的问题[乖]
2017年12月24日 02点12分 4
已经好久没用这个了,忘了。。。
2017年12月25日 15点12分
level 1
on_mouse() 方法最后有一个参数,在设置回调方法的时候,可以把对象传进去,像这样:
setMouseCallback(winName, on_mouse, this);
这样,在 on_mouse 方法里面,就拥有了这个对象,比如
void SomeClass::on_mouse(int event, int x, int y, int flag, void* param) {
// param 就是我们传进去的 this
SomeClass inst = *(SomeClass*)param;
...
}
2021年10月29日 09点10分 5
谢了,好久没用c了,几年前的帖子居然还有人回复
2021年11月27日 01点11分
@0crazy0ac0 hh 不知道算不算挖坟,我用的时候也遇到了这个问题,但是解决了,分享出来
2021年11月28日 02点11分
@鱼鱼FrankFLY 按这样做,程序没有报错,但是回调函数没运行是什么原因呢[乖]
2022年03月04日 03点03分
@学习啦🌐 不知道啊,你调试一下看看吧
2022年03月16日 00点03分
1