C++ 中的 .lib 和 .dll 文件是否与 Java 中的 .jar 文件相当?

明托

所以我有 Java 背景,并开始使用 Visual Studio 学习 C++。据我所知,您可以将 C++ 类和函数放入 .lib 和 .dll 中,以便链接器可以将它们用于其他程序。在 Java 中,您还可以将内容归档到 jar 中。那么这个比较正确吗?

约瑟夫·拉森

这是一个很好的比较,虽然并不完美。

Jar 文件只是 .class 文件的存档,.class 文件包含 Java 编译器所需的所有信息,以便您可以使用类 B 中的类 A。它是自包含的。

C++ 库(.a、.dll、.dylib 等)不是完全独立的。它们是编译一些 .cpp 文件后创建的 .o 文件的存档。然而,它们并不是完全独立的。lib 不是您需要的一切。您还需要相关的包含文件(通常为 .h 或 .hpp,具体取决于您的命名约定)。

所以是的,它们非常相似,尽管存在重要差异。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在不包含jar文件的Java中包含dll文件

如何仅使用* .lib文件而不是OpenCV C ++中的* .dll

C ++可执行文件是否包括.obj,.lib和.dll?

Java中的jar文件和库之间的区别

使用Java在.jar中打开和编辑文件?

如何在Visual Studio中从多个C源代码和头文件创建.dll或.lib?

JAR文件中的Java Applet

测试应用程序是否在Java的jar文件中运行

.NET Core 2.0 SDK中的lib和ref文件夹中的.DLL有什么区别?

从Java中的.java文件构建jar文件

无法从部署在tomcat中的jar文件中提取dll文件

如何在Netbeans 8.2中将lib中的jar包含到项目jar文件中?

不包括 src/lib/*.jar 在 war 文件中

找不到lib目录中的Grails JAR文件

Java-将Jar中的dll文件写入硬盘驱动器?

列出和读取 JAR 文件中 java 包中的所有文件不起作用

在Jar中读取和写入文件

在Fedora Linux中,如何将jar文件从位于myfolder / folderName的文件夹复制到urs / lib / jvm / java-1.8 / jre / lib / etc?

.jar和.dll文件之间的区别

如何调用java中的dll文件

Tomcat / lib或WEB-INF / lib中不需要的jar文件

如何在java Web应用程序的lib文件夹中公开自定义jar?

从 .lib 文件创建 DLL

像在文件夹中一样在JAVA Jar中添加和使用文件

是否可以让Maven“ WAR” pom.xml将我的类打包到JAR中,然后将JAR放在/ WEB-INF / lib文件夹中?

Jar文件作为Java中的代理

单独的JAR文件中的Java API

Linux中的Java Jar文件SoftLink

Java-在JAR文件中写入txt