C++ include头文件之后为什么还要在编译的时候加--lxxx

Posted 软件工程小施同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ include头文件之后为什么还要在编译的时候加--lxxx相关的知识,希望对你有一定的参考价值。

 

 

我在代码的同级文件夹放了这个curl头文件,编译说找不到

我查了一下,说要加这个-lcurl参数编译

我的问题是,为啥要加-lcurl参数编译呀,我之前自己写的头文件直接包含不就进来了[破涕为笑]

-lxxx表示链接libxxx库

c/c++分声明(有这个东西)和定义(这个东西具体是什么),声明放到头文件里,定义放到代码文件里,提供源代码或编译的库

有的实现把声明和定义都放到头文件里,这样只需要一个文件就可以了

这个叫single header library

 

你的意思是,#include <curl/curl.h>里只有申明,所以还需要在编译的时候加上-lxxx,把它的定义加载进来?[发呆]

是的

 

以上是关于C++ include头文件之后为什么还要在编译的时候加--lxxx的主要内容,如果未能解决你的问题,请参考以下文章

C++预编译头文件stdafx.h作用

C++ 头文件引用

C++头文件目录在那个文件夹?

我include自己的头文件,编译器却提示找不到,大家帮忙看看怎么回事好么?

linux下编写c++,include的那些头文件在啥地方

编译大型头文件 C++