C ++静态和共享库

时间:2013-07-02 14:43:19

标签: c++ windows visual-c++ static-libraries

我想用C ++创建一个静态库来存储我的函数。 我知道在Cplusplus论坛上已经提出了这个问题,但我真的可以使用 更准确地描述该怎么做。

据我所知,你创建了一个新的Win32程序,然后添加头文件(.h)和 代码文件(.cpp)。

所以事实上我有几个问题。

1 - 如何将代码放入这些文件中?     我是否使用.cpp?

2 - 我确实设法单独使用添加功能创建一个简单的库,但是在编译之后     并建立它我无法#include它在一个程序中。这是为什么?

有人可以写出一步一步的方法来做到这一点,所以我终于可以做到了。 我知道MSDN有一个教程,我已经看过了。 问题是它使用OOP方法来创建静态库,以及调用 库中的函数使用::运算符(认为它是一个运算符),这是我想要避免的。 想基本上开始简单。

感谢您给予的任何帮助。

1 个答案:

答案 0 :(得分:1)

静态库的想法是,您像往常一样编写代码,但是将其编译为静态库。静态库的用户仍然需要头文件,但他们不再需要.CPP文件,因为实际的实现包含在静态库文件中。

要使用库,请包含所需的头文件,然后将库文件与程序链接。

这是微软演练的链接。 http://msdn.microsoft.com/en-us/library/vstudio/ms235627.aspx

如何使用Visual Studio创建和使用静态库

以下是您在Visual Studio 2012中的具体操作方法。

  • 要创建库,请创建一个新的C ++项目。在向导的“应用程序设置”中,选择“静态库”。取消选中预编译的标题。
  • 根据需要创建您的库。不要忘记在头文件中声明所有内容。
  • 像往常一样编译项目。这会在解决方案
  • 的调试文件夹中创建.lib文件
  • 要使用该库,请按照惯例创建应用程序。
  • 要将库链接到项目,请将.lib文件拖到Visual Studio中的项目中。
  • 要让visual studio找到您的标题文件,请右键单击您的项目。选择属性 - >配置属性 - > C / C ++。有一个名为Additional Include Directories的输入框。在这里,您必须编写库的头文件的路径。

您现在可以使用头文件,就像它们直接由您的项目所做的那样。您的库的实现取自.lib文件,所有内容都应该编译并运行良好。

另一个选项是引用应用程序中的整个库项目。为此,您必须在解决方案中获取库项目。在Visual Studio中右键单击您的解决方案 - >添加 - >现有项目。然后你必须参考该项目。右键单击您的项目 - >参考 - >公共属性 - >框架和参考 - >添加新参考 - >选择您的项目。现在,您可以在此解决方案中编辑库,并直接在您的应用程序中使用它。