c++中怎么像蓝图一样在不知道对方有没有这个接口的时候调用这个接口,如果没有就不调用,有就调用?
用动态加载动态库的方式,LoadLibrary
typedef int (WINAPI *MY_FUNC)(void);
MY_FUNC func = NULL;
int main()
{
HMODULE g_hDll = LoadLibrary(L"my_dll.dll");
if (g_hDll)
func = (MY_FUNC)GetProcAddress(g_hDll, "fnmy_dll");
if(func != NULL)
func();
return 0;
}
前提是你得知道这个接口的参数类型和返回值类型
你得反编译找到dll中的接口。
这个需要有前提的,你希望调用的接口是以什么方式提供的,如果dll,上面朋友已经解答了。如果是直接c++类库提供,则不存在此问题。有.h和lib已经都提供好了,虚函数的话它里面会提供方法是否实现的返回值的。因此在c++机制下您说的问题似乎不存在?