学习lib文件的创建和使用。
建立两个lib文件。
(1)lib_1项目:
lib_1.h
int add(int x, int y);
lib_1.cpp
#include "lib_1.h"
int add(int x, int y)
{
return x + y;
}
这样子生成了lib_1.lib
(2)lib_2项目
lib_2.h
#include "lib_1.h"
int doubleAdd(int x1, int x2, int x3, int x4);
lib_2.cpp
#include "lib_2.h"
int doubleAdd(int x1, int x2, int x3, int x4)
{
return (add(x1, x2) + add(x3, x4));
}
注意:需要加入lib_1.h 文件的路径。不需要添加 lib_1.lib文件的路径和名称。
生成lib_2.lib。
(3)use_lib.exe
use_lib.cpp
#include "lib_2.h"
#include <iostream>
int main()
{
std::cout << doubleAdd(1, 2, 3, 4);
system("pause");
return 0;
}
添加lib_2.h的路径,编译出错,提示找不到lib_1.h。添加lib_1.h文件的路径。
再次编译,编译出错,提示“无法解析的外部符号”(由内容判断与lib_2.lib有关)。添加lib_2.lib文件的路径和名称到工程项目中。
再次编译,编译出错,提示“无法解析的外部符号”(由内容判断与lib_1.lib有关)。添加lib_1.lib文件的路径和名称到工程项目中。
再次编译,编译成功。
总结:
(1)生成基于 lib_1 的 lib_2 项目时,只需要在 lib_2 项目中加入 lib_1 的头文件就行了。
(2)生成基于 lib_2 的 use_lib.exe 文件时,需要添加lib_2的头文件,lib文件名称及路径。若lib_2 是建立在lib_1 基础之上的,还需要添加lib_1的头文件,lib文件名称及路径。