问题就在标题中,如果我有一个我想通过 a 使用的函数g_timeout_add()
,但是这个函数是一个类成员函数,有什么办法可以和它一起使用g_timeout_add()
吗?
问问题
295 次
1 回答
2
您需要使用蹦床功能,例如:
extern "C" gboolean trampoline(gpointer data) {
static_cast<MyClass*>(data)->mem_fun();
}
// ...
MyClass c = /* ... */;
g_timeout_add(/*...*/, static_cast<gpointer>(&c));
如果您想编写可移植代码,请参阅这个问题,了解为什么应该使用免费函数。
于 2010-05-01T17:57:23.537 回答