我正在尝试在 C 项目中导出一些 C++ 代码......实际上我遇到了以下问题:
_CreateToolhelp32Snapshot fnCreateToolhelp32Snapshot = (_CreateToolhelp32Snapshot) GetProcAddress(GetModuleHandleA(L"kernel32"), "CreateToolhelp32Snapshot");
_Thread32First fnThread32First = (_Thread32First) GetProcAddress(GetModuleHandleW(L"kernel32"), "Thread32First");
_Thread32Next fnThread32Next = (_Thread32Next) GetProcAddress(GetModuleHandleW(L"kernel32"), "Thread32Next");
我在 C 编程中的三个对象中保存了三个函数(“CreateToolhelp32Snapshot”、“Thread32First”和“Thread32First”)的内存地址......我在 Ubuntu 13.04 下使用 mingw 进行编译,我得到了这个错误:
(row 1): error: initializer element is not constant
(row 2): error: initializer element is not constant
(row 3): error: initializer element is not constant
我知道在 C 中,地址函数不被视为常量值,但会非常有助于找到解决此约束的方法...
提前感谢您的任何建议...