c++ 重命名文件夹导致找不到包含的文件

gudnpqoy  于 2023-03-14  发布在  其他
关注(0)|答案(1)|浏览(163)

我有一个包含如下内容的LibA/tests/tests. h文件:

#include "../../LibB/abc.cpp"

此文件将编译。
我将“tests”文件夹的名称更改为“Integration_Tests”,所以现在我的文件是LibA/Integration_Tests/tests. h
现在,此文件不编译,显示的消息为:

fatal error: ../../LibB/abc.cpp: No such file or directory.

什么可能阻止找到abc.cpp文件?“Integration_Tests”文件夹与“tests”文件夹位于同一位置。因此,如果在将文件夹命名为“tests”时找到了“abc.cpp”,则在将文件夹命名为“Integration_Tests”时也应该找到它。
下面是我的树的一个简短版本:

~library/LibA/tests/tests.h
~library/LibB/abc.cpp
s4n0splo

s4n0splo1#

我一直无法找到解决上述问题的方法。最后,我被建议简单地将我正在包括的文件移动到我当前的文件夹中。这解决了眼前的问题。
当我重命名文件夹时,是什么导致了这个问题仍然是一个谜,但我不打算进一步调查它。我会把它归结为上面评论的帖子所说的一些不愉快的后果:“相对向上路径遍历是一种可怕的做法”,并提醒人们不应该这样做。
感谢所有在上面评论的人。

相关问题