【问题标题】:Include same libraries into 2 cpp files in the same project将相同的库包含到同一项目中的 2 个 cpp 文件中
【发布时间】:2015-01-03 10:41:04
【问题描述】:

我一直在尝试调用一个函数,该函数使用与我的 main.cpp 中的函数相同的库包含。 具体来说:

Main.cpp

#include "dlib\all\source.cpp"
#include Function.h
   ...

函数.cpp

#include "dlib\all\source.cpp"
   ...

这会产生错误 lnk1169 one or more defined symbols found

如果我只是在 Function.h 中定义 #include 并将 Function.h 包含在我的 Main cpp 中,则会出现相同的错误。 那么如何在 Visual Studio 2012 的同一个项目中拥有两个都需要相同包含的 cpp 文件呢?

编辑: 无知有时真的很糟糕。需要做的是将source.cpp文件添加到不被包含的项目中。

【问题讨论】:

  • 为什么要包含 .cpp 文件?为什么不是标题 .h?
  • 你好。请在下面查看我的评论。

标签: c++ visual-studio-2012


【解决方案1】:

您可能应该包含一个标头而不是 cpp 源文件。 类似的东西
#include "dlib\all\source.h"

iol 的回答似乎是正确的做法:

直接来自站点:dlib.net/compile.html。你需要做的就是 创建一个空的控制台项目。然后将 dlib/all/source.cpp 添加到它 并将包含 dlib 文件夹的文件夹添加到 #include 搜索 小路。然后您可以通过将任何示例程序添加到您的 项目

【讨论】:

  • 在 slib 库中没有类似的东西,因为 source.cpp 包含包含 .h 文件。
  • 我仍然不认为这是这样做的方法 cf dlib.net/object_detector_advanced_ex.cpp.html。也许您可以提供更多信息,例如编译行命令和代码。
  • 直接来自网站:dlib.net/compile.html。您需要做的就是创建一个空的控制台项目。然后将 dlib/all/source.cpp 添加到其中,并将包含 dlib 文件夹的文件夹添加到 #include 搜索路径。然后你可以通过将它添加到你的项目来编译任何示例程序
猜你喜欢
  • 2018-08-19
  • 1970-01-01
  • 1970-01-01
  • 2011-01-17
  • 1970-01-01
  • 2020-02-24
  • 1970-01-01
  • 2013-05-14
  • 1970-01-01
相关资源
最近更新 更多