源:http://blog.csdn.net/vippolka/article/details/8552735

在项目中引入.h、.lib和dll、以及.cpp

1、.h的引入

解决办法1:把  XX.h拷到工程目录下

解决办法2:更常用的情况是,我们在其它地方建立一个Include目录,然后设置项目环境配置,指向该目录,如下:

        配置项目属性:c/c++      常规   附加包含目录     添加:..\..\Include

(有多个工程的情况,如果都引用同样的.h文件)

至此,你可以声明.h文件中的类对象了,但是无法使用其中的方法。

调用一个方法

编译报错:

错误 1 error LNK2001: 无法解析的外部符号 _XX.obj

错误 2 fatal error LNK1120: 1 个无法解析的外部命令    XX .exe 1

注意,此时的错误是“Link”错误,也就是说,编译已经完成了,没有语法错误,然后链接lib库的时候,报错

2、.lib文件的引入

引入方法:

项目   属性    链接器      输入     附加依赖项    XX.lib

编译:

错误 1 fatal error LNK1104: 无法打开文件“XX.lib”

解决办法1:把lib烤到工程目录下

解决办法2:把lib拷到目录\lib目录下,然后设置:

项目   属性    链接器      常规    附加库目录    ..\..\lib

F5运行

弹出错误:

XX.dll

3、dll库的引入

这次应该简单了,把XX.dll拷到工程目录下。

如果要运行Debug下的程序,需要将XX.dll也拷贝到Debug目录下。

4、.cpp文件的引入

假如一个项目中几个工程,有一些通用模块(定义成独立的.h和.cpp文件),这些通用模块可以放在一个公共目录下(common目录),大家都从这个目录下引入。

使用方法:配置项目属性:c/c++      常规   附加包含目录     添加:..\common (如果有子目录,也要添加子目录)

同时,要在项目中引入.h和.cpp文件。注意,引入后会在项目文件目录中看到,但是文件还是在common目录下的,本地没有.

以上设置的目的,是将额外引入的资源,不管是.h,还是lib,还是dll,都尽量放到另外的一个公共目录,而不是拷贝在本工程下面。因为还可能有别的项目需要引用,放到一个公共目录方便管理。

以下分别说明各种资源的做法:

.h         可以放到公共目录,不需要拷到本地。可以不把.h文件导入到项目中,而直接#include ""

.lib        可以放到公共目录,不需要拷贝到本地

.dll        需要拷贝到本地。如果使用Debug编译出来的程序运行,需要拷贝到Debug下面

.cpp      可以放到公共目录,不需要拷贝到本地 ,但需要在项目中引入

如何在项目中引入 #include .h、.lib、 .dll、.cpp (转)的更多相关文章

  1. 在Android项目中引入MuPdf

    由于公司手机App要加入一个附件查看功能,需要查看PDF文件,在网上找了许多第三方工具,最后选择了MuPDF. 更多第三方工具可以查看大神总结的:http://www.cnblogs.com/poke ...

  2. vue-cli项目中引入第三方插件

    前言 最近有小伙伴问道如何在vue-cli项目中引入第三方插件或者库,例如如果想在项目中使用jQuery中的Ajax请求数据呢?或者我想使用Bootstrap框架呢?等等这些问题,本篇博客将带你学习如 ...

  3. 如何在项目中引入MetaQ消息收发机制

    当需要异步发送和接收大量消息时,需要在Crystal项目中引入MetaQ消息收发机制. 关于MetaQ使用的官方例子可参考:https://github.com/killme2008/Metamorp ...

  4. eclipse项目中引入shiro-freemarker-tags会jar包冲突

    maven项目中引入了这个依赖. <dependency> <groupId>net.mingsoft</groupId> <artifactId>sh ...

  5. 项目中引入composer

    众所周知,composer可以自定义加载插件库和依赖,它也是用PHP写的,怎样在自己的项目中引入并使用composer呢?. 1.新建一个项目,在项目的根目录创建composer.json文件,用过一 ...

  6. 在vue项目中引入jquery

    在vue项目中引入jquerycnpm install jquery --save在main.js中引入,加入下面这行代码:import 'jquery'注:有些项目是按需加载的,在main.js里面 ...

  7. 【vue】如何在 Vue-cli 创建的项目中引入 iView

    根据vue项目的搭建教程,以下记录如何在Vue-cli创建的项目中引入iView. 1)iView的安装,在项目下使用 npm 安装iView cnpm install  iview  --save ...

  8. 【vue】如何在 Vue-cli 创建的项目中引入iView

    根据vue项目的搭建教程,一下记录下如何在Vue-cli创建的项目中引入iView. 1)安装iView,在项目下 cnpm install  iview  --save 2 ) 在 webpack ...

  9. Struts2基本使用(一)--在项目中引入Struts2

    Struts2基本使用 在MVC开发模式中,Struts2充当控制器(Controller)的角色.其主要功能就是处理用户请求,生成响应,是连接视图层(View)和模型层(Model)的桥梁.在处理用 ...

随机推荐

  1. how to increase an regular array length in java?

    Arrays in Java are of fixed size that is specified when they are declared. To increase the size of t ...

  2. php:sprintf

    十六进制 $hex = sprintf("%x",18); 输出:12(%x表示十六进制) $hex = sprintf("%4x",18); 输出:strin ...

  3. Mysql:输出到文件

    mysql>tee /home/a.txt mysql>show processlist; mysql>exit tee命令能重定向输出,同时屏幕会同步显示.

  4. Spring Security-用户密码自定义加密

    public class SunPasswordEncoder implements PasswordEncoder{ //@实现加密的方法,既将明文转换为密文的方法 public String en ...

  5. laravel路由使用【总结】

    1.路由参数 必选参数 有时我们需要在路由中捕获 URI 片段.比如,要从 URL 中捕获用户 ID,需要通过如下方式定义路由参数: Route::get('/test_param/{id}', 'T ...

  6. [Java]知乎下巴第0集:让我们一起来做一个知乎爬虫吧哦耶【转】

    文章来源:http://jp.51studyit.com/article/details/16203.htm 作者:  汪海洋 身边的小伙伴们很多都喜欢刷知乎,当然我也不例外, 但是手机刷太消耗流量, ...

  7. 12.04 ubuntu 进入登录界面,账号密码确定是正确的但是进不来系统。

    很简单,HOME目录存储太多东西了,导致开机不了.

  8. replication across two data centers

    http://andyhan.net/index.php/sys-adm/item/291-hbase-replication http://shitouer.cn/2013/04/hbase-mul ...

  9. 使用内链接(A a inner join B b on a.xx = b.xx)查询2个表中某一列的相同的字段。

    这里一句代码就是查询2个表中某一列的相同,可是查询出来之后B表因为有很多重复的id数据,然而查询出来的数据需要插入到临时表中,临时表的oid是不允许有重复的, 因此需要用到 distinct 函数来取 ...

  10. 转 [分享一个SQL] 查会话阻塞关系,层次关系.

    with ash as (select /*+ materialize*/* from DBA_HIST_ACTIVE_SESS_HISTORY  where sample_time between ...