小编Wew*_*See的帖子

为什么有些DLL文件需要额外的.lib文件才能进行链接?

我有关于库链接和.lib文件的问题...

这是背景:

  • OS = Windows
  • IDE = QT

我创建了一个DLL:MyLib.dll.
要在我的QT项目中使用该库,我只需要包含一个包含路径,一个指向库的链接并使用头文件:

LIBS += "C:\myPath\MyLib.dll"
INCLUDEPATH += "C:\myPath"
HEADERS += \
    ../myPath/MyLib_global.h \
    ../myPath/mylib.h
Run Code Online (Sandbox Code Playgroud)

我在我的项目中使用第三方DLL:third.dll
如果我执行与上面示例相同的操作,则它不起作用:

LIBS += "C:\myPath\third.dll" 
Run Code Online (Sandbox Code Playgroud)

第三方DLL附带.lib文件"third.lib",我显然需要与DLL一起使用.

这是为什么?为什么有些DLL库需要.lib文件,但其他DLL库却不需要?
可能是.lib是一个访问DLL的静态库吗?

非常感谢!

dll qt shared-libraries dynamic-linking static-libraries

16
推荐指数
2
解决办法
4785
查看次数

C++ 指针与 std::vector:对长尺寸变量有什么影响?

我有 C 背景,我正在用 C++ 重新编码一些旧代码......在这个过程中,我开始使用 C++ 向量,它非常易于使用!

向量能很好地处理很长的数据流吗?例如,在音频应用程序中,加载一首立体声 3 分钟歌曲需要将近 16M 的浮点数

float *stereoSong = NULL;
stereoSong = new floats[15787800];
Run Code Online (Sandbox Code Playgroud)

不必处理向量的内存管理非常好,但我想知道 C++ 向量是否可以很好地处理大量数据

谢谢!

c++ pointers vector

2
推荐指数
1
解决办法
113
查看次数