您好(我使用的是 Windows,mingw g++ 编译器和 mingw32-make)
为了概括我的问题,我想学习如何编写一个 c++ 源文件,如下所示:
假设 foo.cpp 依赖于 foo.h,其中 foo.cpp 在 src\ 中,而 foo.h 在 include\
// foo.cpp
#include "foo.h"
通常我会这样写
//foo.cpp
#include "..\include\foo.h"
但我发现随着项目的增长,我开始需要更多的组织,这种方法不够动态。原因是如果我想将 foo.h 移动到新目录(比如 include\bar\foo.h),我必须更改每个文件的每个包含。有没有办法让 make 实现这一目标。如果是这样,它也可以用于头文件依赖项。
作为旁注,我是makefile的新手。我什至不确定它是否知道这些包含存在,因为它们在代码中(事实上据我了解它没有)。这将导致我遇到一个不幸的次要问题,即可以看到这些包括吗?如果不是,是否可以更改它以使其可以?随意回答你将如何解决这个问题,因为我觉得我通过将包含放在文件中而不是将它们链接到 makefile 中以错误的方式解决这个问题。