gpt4 book ai didi

c++ - 可以给g_time_out add一个类的成员函数吗?

转载 作者:行者123 更新时间:2023-11-28 03:57:48 25 4
gpt4 key购买 nike

问题就在标题中,如果我有一个函数想通过g_timeout_add()来使用,但是这个函数是一个类成员函数,有什么办法可以使用它用 g_timeout_add()?

最佳答案

你需要使用蹦床功能,例如:

extern "C" gboolean trampoline(gpointer data) {
static_cast<MyClass*>(data)->mem_fun();
}

// ...
MyClass c = /* ... */;
g_timeout_add(/*...*/, static_cast<gpointer>(&c));

参见 this question如果您想编写可移植代码,为什么应该使用自由函数。

关于c++ - 可以给g_time_out add一个类的成员函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2750957/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com