我有一个由函数组成的类。我只需要定期调用这个函数。有一个计时器回调 api,其形式如下:
Timer(&obj,&Class::Func,Time)
因此,如果我们将成员函数附加到此 api,它将被定期调用。
此 api 有一个包装器,它接受字符串形式的参数。因此,我需要将每个参数作为字符串传递,并进行必要的解析并调用实际的 api。
所以我想先将对象地址和成员函数地址转换为字符串并在我的项目中使用它。任何人都可以通过提供示例代码来帮助我执行此操作。
最佳答案
您根本无法将成员函数转换为字符串然后使用它。
有几种方法可以将类型或表达式转换为字符串,例如 typeid ,但只有这样才有效,反之则不然。
C++ 中没有将字符串转换为成员函数地址的 native 方法。但是,您可以创建一个关联容器(如 std::map )将字符串与成员函数指针关联,并使用它进行包装和解包。
关于c++ - 将成员函数指针转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34826535/