首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将库的.cpp和.hpp文件包含在visual studio中的c++项目中

如何将库的.cpp和.hpp文件包含在visual studio中的c++项目中
EN

Stack Overflow用户
提问于 2021-01-21 06:39:58
回答 2查看 2.1K关注 0票数 1

为一个非常基本的问题道歉。我正在尝试将CMake项目移植到visual项目中。基本上,我想在没有使用CMake文件的情况下从visual运行该项目。在我需要移植的项目中,有许多文件夹和子文件夹包含许多.cpp和.h文件。这些都包含在主cpp文件中,因为使用了#includes

My Case

我想包括的图书馆

还有我的main.cpp

例如,为了使事情变得简单,假设我有一个主文件main.cpp,这个文件包括#include "Libpfs/colorspace/colorspace.h"。Libpfs是一个文件夹,它有许多子文件夹,其中一个是colorspace文件夹,它有许多.h和.cpp文件。一个colorspace.cpp.文件是.h文件,它包含在使用#include的main.cpp中,该文件夹也有.cpp文件,即.cpp文件

我的尝试

我的目标是把他们纳入我的项目。下面是我在Visual Project->properties->C/C++中尝试的附加包含目录(),我给出了包含Libpfs的文件夹的路径,但是这种方法没有工作,并导致链接器错误--这可能是因为我没有Libpfs的lib文件(如果我错了,请纠正我)。我只有.cpp文件对应的.h文件。我认为导致错误的原因是.cpp文件尚未编译。

我的问题

如何将cpp文件也包含到我的项目中(因为我没有这些文件,所以不是lib文件)。

EN

回答 2

Stack Overflow用户

发布于 2021-01-21 11:21:19

使用作为源代码,我发现CMakeLists.txt不包含任何特殊内容。

代码语言:javascript
运行
复制
FILE(GLOB COLORSPACE_H *.h)
FILE(GLOB COLORSPACE_HXX *.hxx)
FILE(GLOB COLORSPACE_CPP *.cpp)

SET(LIBPFS_H ${LIBPFS_H} ${COLORSPACE_H} ${COLORSPACE_HXX} PARENT_SCOPE)
SET(LIBPFS_CPP ${LIBPFS_CPP} ${COLORSPACE_CPP} PARENT_SCOPE)

因此,您可以将所有文件添加到VS C++项目中。我会使用一些目录管理,将这些源与您自己的源分开。

但是无论如何,在这种情况下,您应该按相对路径包含源。例如。

代码语言:javascript
运行
复制
#include "../../Libpfs/colorspace/colorspace.h"

或者,您可以将所有内容放在单独的C++库(静态.lib或动态.dll)中。在这种情况下,您应该将二进制文件放在bin路径中,并将其添加为附加库目录(您自己项目的项目属性),并将所有头文件放在include/Libpfs路径中,并将其添加为附加包含目录。在这种情况下,您应该将文件包含为。

代码语言:javascript
运行
复制
#include <Libpfs/colorspace/colorspace.h>

关于另一个话题

代码语言:javascript
运行
复制
#define pow_F(a,b) (xexpf(b*xlogf(a)))

我发现这个定义仅限于在上面使用的同一源的源中。它似乎来源于雪橇,根据的说法,它应该会加速。但是,您应该度量这是否仍然是真的,而不是执行复制粘贴/货物邪教编程。我认为通常您应该使用标准库std::pow,它为floatdoublelong double提供了重载。在大多数情况下,编译器将为您优化它的使用。

票数 1
EN

Stack Overflow用户

发布于 2021-01-21 20:58:50

打开资源管理器,查找C:\Program Files\Microsoft SDK\,然后在它的\lib中使用大量的.lib的dir。它是.lib和其他类似东西的msvc源代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65822278

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档