类的静态成员函数调用该类的非静态成员函数(Qt使用Halcon生成的线程程序)

在Qt使用Halcon生成的程序时遇到的问题。由于Halcon中的结果是要传到Qt中的,所以将生成的程序都放到了类QtOCR中(该类继承QObject)。

而Halcon线程生成的线程函数是静态的,并且调用了对应的非静态函数,见下图

 静态函数是没有this指针的,所以调用的函数不知道是哪个类对象的。所以传入该类指针。

  

注意凡是使用halcon线程函数的类中,在构造函数中添加如下代码

#if defined(_WIN32)
    SetSystem("use_window_thread", "true");
#endif

 Qt执行时竟然报上段代码的错误。VS打开pro运行没问题。

【一针见血的博客】

类的静态成员函数调用类非静态成员的方法

posted @ 2023-02-17 11:13  夕西行  阅读(143)  评论(0编辑  收藏  举报