如何在Visual Studio中添加第三方SDK——以添加glfw为例

如何在Visual Studio中添加第三方SDK

——以添加glfw为例

  我目前在学习参考文章2的[OpenGL]配置glfw。
  在我按照教程所说,从glfw.org下载了glfw之后,发现所下载的Windows pre-compiled binaries对应我所使用的IDE(Visual Studio 2019)文件夹下的文件如下图:
如何在Visual Studio中添加第三方SDK——以添加glfw为例_第1张图片
  教程中最后该章节最后一步如下:
如何在Visual Studio中添加第三方SDK——以添加glfw为例_第2张图片
  可这对于一枚小白来说太过简略了。我在Visual Studio 2019的搜索框中搜索了“包含路径”和“附加依赖项”,但是并没有任何结果。
于是我在CSDN上找到了参考文章1。库工程生成的三个核心文件的后缀名是.h, .dll, .lib。其中.lib和.h是隐式动态调用时使用的。函数声明在.h中,函数定义在.lib中。调用的方式就像我们平时定义的一样。因此在编译时就需要告知编译器.h和.lib所在的地址。而.dll时显式动态调用时使用的,其调用方式和隐式动态调用不同,在程序中只需要#include (该头文件中定义了导入库的函数LoadLibrary())然后通过如下的方式显式调用函数即可。下面的程序是调用一个在math.dll中定义的*Add()*函数。摘自参考文章1

#include 
#include 
int main(){
   int a = 5, b = 10;
   int c = 0;
   typedef int(*FUNA)(int, int)  //typedef一个函数指针类型
   HMODULE hMod = LoadLibrary(TEXT("math.dll"));
   FUNA addfun;
   if (hMod ! = NULL){
         addfun = (FUNA)GetProcAddress(hMod,TEXT("Add"));
         if (addfun ! = NULL){
              c = addfun(a, b);
         }
   }
   std::cout << "a+b= " << c << std::endl;
   system("pause");
   return 0;
}

  相当于以一种粗暴的方式直接调用.dll文件中的函数。
  在这次配置的glfw提供的文件夹中,并没有.h的文件,只有两个.lib的文件和一个.glfw的文件,故权且先按照隐式动态调用的方法来做。我在VS 2019中新建了一个项目,在项目名上单击右键,选择属性。
如何在Visual Studio中添加第三方SDK——以添加glfw为例_第3张图片
  在VC++目录中,包含目录和库目录均添加glfw3.lib所在的目录。
如何在Visual Studio中添加第三方SDK——以添加glfw为例_第4张图片
  在链接器-输入-附加依赖项中添加glfw3.lib即可。
如何在Visual Studio中添加第三方SDK——以添加glfw为例_第5张图片
参考文章:
[1] LittleLittleFish_xyg, https://blog.csdn.net/littlelittlefish_xyg/article/details/83030430
[2] collectionne, https://www.cnblogs.com/collectionne/p/6937644.html

你可能感兴趣的:(小学期大作业,VS,SDK,glfw)