在 VC++ 中构建和实现静态库
学习如何从头开始构建静态库项目,并在 Visual C++ 解决方案中实现它
目标
创建一个简单的静态库,并在控制台应用程序中实现它。
要求
您的电脑上至少安装了 Visual Studio C++ 2008 Express Edition。
构建静态库项目
- 创建一个新项目。
- 将项目类型选择为“常规”。模板选择“空项目”。我将项目命名为
MyMathLib
。设置名称后,按“确定”。 - “Win32 应用程序向导”对话框将弹出。按“下一步”,并在“应用程序类型”选项中选中“静态库”,在“附加选项”中可以取消选中预编译选项。
-
您需要编写类、属性和函数代码,以实现所需的功能。让我们为我们的库编写一些简单的函数。首先,我们需要创建一个头文件来声明这两个函数。这些函数将分别命名为 add 和 multiply。
每个函数将接收两个整数参数,并返回一个整数值。
#ifndef __MY_MATH_LIB__ #define __MY_MATH_LIB__ int add(int number_a, int number_b); int multiply(int number_a, int number_b); #endif
声明完成后,让我们在 .cpp 文件中编写函数的定义。
#include "MyMathLib.h" int add(int number_a, int number_b) { return (number_a) + (number_b); } int multiply(int number_a, int number_b) { return (number_a) * (number_b); }
- 按 F7 构建库解决方案。如果进入我们的 Debug 或 Release 文件夹(取决于我们的编译配置),我们的输出文件将是静态库。这意味着我们的库可以实现于任何 Visual C++ 项目中。让我们在控制台应用程序中使用这些函数。
实现静态库
- 转到解决方案资源管理器,右键单击解决方案项目,然后选择“添加”->“新建项目”。
- 将项目类型设置为“Win32”,模板设置为“Win32 控制台应用程序”。然后单击“确定”。我将我的项目命名为
TestMyMathLib
。 - 在“Win32 应用程序向导”窗口中,按“下一步”。确保应用程序类型是“控制台应用程序”,并在“附加选项”中选择“空”。
- 在解决方案资源管理器中,转到您的 Win32 应用程序项目根项目,右键单击,然后在子菜单中单击“设为启动项目”选项。
- 在开始编写 Win32 应用程序中的任何代码之前,我们需要将静态库项目注册为依赖项。因此,再次在解决方案资源管理器中,转到您的 Win32 应用程序项目根项目,右键单击,然后在子菜单中单击“项目依赖项...”选项。
- “项目依赖项”窗口将弹出。在“依赖项”选项卡上,确保选择了您的 Win32 应用程序项目。然后在依赖项列表中,选择您的静态库项目。
在“构建顺序”选项卡上,确保您的静态库项目在您的 Win32 应用程序项目之前构建。
- 为 Win32 应用程序项目创建一个 CPP 文件,并编写以下代码
#include <iostream> #include "../MyMathLib/MyMathLib.h" using namespace std; int main () { cout << "Testing my math lib" << endl; cout << "Please enter a number "; int number_a, number_b; cin >> number_a; cout << "Please enter another number "; cin >> number_b; cout << "The addition result for these numbers is "; cout << add(number_a, number_b); cout << endl; cout << "The multiply result for these numbers is "; cout << multiply(number_a, number_b); cout << endl; system("pause"); return 0; }
- 按 F7 构建解决方案。然后按 F5 运行和调试您的应用程序。应用程序应该如下所示