如何以类似于C函数的方式将dlsym映射到非静态C++成员函数
How to map dlsym to a non-static C++ member function in a manner similar to a C function?
我仔细研究并测试了以下URLS,在共享库(Linux)中调用函数会出现Segmentation Fault以及https://git.xeserv.us/Quora/dlsym-example/src/master/testprog.c.我的问题是如何将dlsym映射到类似于这个C函数示例的非静态C++成员函数。如果我用C函数语法代替非静态C++成员函数,我会得到一个no-op。
void *lib; /* void pointer named lib */
void (*sayHello)(void); /* void pointer named sayHello */
lib = dlopen("helloWorld.so", RTLD_NOW);
*(void **) (&sayHello) = dlsym(lib,"_ZN19CDataTransferServer10InitializeEi13CC_SAMPLETYPEjjj");
感谢您的帮助。
考虑通过提取的损坏名称加载方法
readelf -Ws libmy.so
或
nm -g libmy.o
相关文章:
- 使用std::函数映射对象方法
- 删除 std::函数映射
- 具有单个参数的布尔函数映射
- 如何使用成员函数映射参数包?(非恢复性,折叠前表达式)
- 如何在类中存储指向字符串到成员函数映射的智能指针,以便它不会因类型不完整而失败?
- 将函数映射提升为字符串
- 将C++成员函数映射到C回调
- 如何使用JNA将返回字符串数组(constchar**)的函数映射到Java
- 如何将可变数量的不同类型的参数传递给 C++11 函数映射中的函数
- 将 std 绑定传递到函数映射的问题
- 异构类型的成员函数映射
- c++的cmath函数映射
- 函数映射容器中C++函数返回类型重载:自动推导失败,并出现编译器错误
- c++构造函数映射对象(已编辑)
- QtConcurrency::与成员函数映射
- c++函数映射实现
- 使用boost的字符串和函数映射会导致编译错误
- 访问与其他函数映射的文件
- 将C++重载函数映射到异构元组上
- 用于成员函数映射的c++find()