在程序开发中,很多时候需要用到别人开发的工具包,如OpenCV和itk。一般而言,在vs2008中,很少使用源文件,大部分是使用对类进行声明的头文件和封装了类的链接库(静态lib或动态dll)。
如果要使用这些类,需要在文件中包含头文件的名字,如#include “cv.h”。但这个并不够,因为这个文件一般来说不在当前目录下,有两种方法解决这个问题。一,将所包含的头文件复制到当前目录(另一篇文章有写)下,这个比较有局限性,因为如果头文件太多,这样比较麻烦。二,将头文件所在的路径包括进去,即添加包含(include)文件目录。两种方法:A.依次打开“项目——属性——配置属性——C++——常规——附加包含目录”中加入所有的路径。这里需要注意的是(1)路径必须指向头文件所在的子文件夹,而不能直到父文件夹就结束(2)每个路径不需要加上双引号,输入了之后,vs2008会自动加上双引号,如果自己加可能vs2008无法识别双引号(3)如果是多个路径,路径直接用“;”隔开。B.[菜单]“工具->选项->项目和解决方案->C++ 目录”,选择对应平台,然后添加所需“包括文件”目录。
除了头文件以外,也需要告诉编译器,类在哪里实现的,即封装类的链接库在哪里,这样程序才能执行工具包中的函数。
首先需要将链接库的路径输入vs2008,即添加库(libs)文件目录。两种方法:A.依次打开“项目——属性——配置属性——链接器——常规——附加库目录”中加入链接库的路径。B.[菜单]“工具->选项->项目和解决方案->C++ 目录”,选择对应平台。
然后添加所需“库文件”目录,即添加编译所需要(依赖)的 lib 文件 。在“项目——属性——配置属性——链接器——常规——输入——附加依赖项”中加入链接库的名字,多个lib用空格隔开。(等同于“#pragma comment(lib, “xxx.lib”) ”语句)。