c++ 动态库 显式加载 隐式加载

window API 动态库隐式加载方式。

//库函数定义
int add(int a,int b)
{
    return a+b;
}

 用户需要拿到库文档,文档记录了dll内的每个函数名和参数,利用函数指针指向库函数进行使用。

优点:dll库文件可以放入指定文件夹;无需引用头文件。

缺点:参数需要遵守文档函数内参数规则。

隐式加载优缺点则反之。

HINSTANCE hInst=LoadLibrary("dll_name.dll");//加载动态库获得句柄
typedef int(*fun_ptr)(int a,int b);//定义库内函数的指针
fun_ptr fp=(fun_ptr)GetProcAddress(hInst,"add");//获得函数句柄

linux隐式加载

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章