【发布时间】:2015-02-07 20:10:31
【问题描述】:
当我们打算使用引用项目中的方法时,为什么必须在 Visual Studio 2013 中引用项目(对于 C++)?我很困惑,因为我们使用了 #include 预处理器指令,该指令将我们打算使用的代码复制并粘贴到仍然在实际使用它的方法之上/之前的同一个头文件中。
基本上,即使我将所有 项目 放在同一个 solution 文件中,并且头文件可以正确找到彼此(intellisense 不会抱怨/正确 linting发生),我仍然得到链接器错误。但是,即使引用项目纯粹是为了解决链接器错误,如果智能感知可以peek/显示定义到我从单独的项目中导入的代码,这是否意味着 Visual Studio 也知道我链接的是哪个项目?
一定是有原因的,我们都 #include 并且即使现在在 VS 2013 中也引用了包含的项目。有人可以帮助解释原因吗?
【问题讨论】:
-
#include 只会让编译器满意。你也有代码的链接。 “添加引用”是一种告诉构建系统您想要链接其他项目的静态库或导入库的简单方法。偶然发现它很有用,太多习惯于 .NET 的程序员也想在 C++ 项目中使用“添加引用”。所以微软只是让它以这种方式工作。
标签: c++ visual-studio visual-studio-2013