【发布时间】:2010-06-04 03:32:05
【问题描述】:
我只是想进一步了解外部 C 函数。
据我所知,extern C 函数始终是您尝试从已编译的应用程序调用的函数。可执行、静态或动态库。
extern "C"
{
HRESULT CreateDevice();
typedef HRESULT (*CREATEDEVICE)();
HRESULT ReleaseDevice();
typedef HRESULT (*RELEASEDEVICE)();
}
所以我的问题是......
我的理解正确吗??
它总是必须是一个 C 函数指针吗??'
为什么必须为每个函数使用 typedef ??
我认为当您使用 GetProcAddress() 时。您正在该特定应用程序 HEAP 上分配内存,而不是您从中调用它的应用程序。因此,您也必须从该堆中释放它??
【问题讨论】:
-
你看到这个问题了吗? stackoverflow.com/questions/67894/…
标签: c++ c visual-studio visual-studio-2008 visual-c++