我正在使用Xcode(使用C ++),我的项目布局(在文件系统中,而不是在Xcode中)看起来像这样:
SubfolderA
-file_A_1,file_A_2
SubfolderB
-file_B_1,file_B_2
现在我已经通过群组在Xcode中设置了这个结构。因此,当我想在file_B_1中包含file_A_2时,我在file_B_1中写了#include "file_A_2"
。
是否有某种方法可以使包含看起来像#include "/SubfolderA/file_A_2"
,以便我可以轻松查看包含文件所属的目录/子文件夹?
答案 0 :(得分:0)
查看正在进行的操作的一种方法是查看构建日志并展开编译-I
的行。查看传递给编译器的$(ProjectDir)/srcroot
选项。
如果您不喜欢,可以在 Build Settings &gt;中添加源树。 标题搜索路径包含<form method="post" action="...">
<input type="hidden" name="header1" value="Header 1">
<input type="hidden" name="header2" value="Header 2">
<input type="hidden" name="header3" value="Header 3">
<input type="hidden" name="header4" value="Header 4">
<input type="hidden" name="header5" value="Header 5">
...
</form>
并使其递归,这样可以避免单独添加每个子文件夹。
根据我的经验,这一点从来没有必要,只要我记得。
就Xcode文件夹而言,如果添加了顶级源文件夹,则在将它们添加到文件系统时会自动添加所有子文件夹,从而避免了使它们保持同步的麻烦。但是,您可能需要在源文件组下添加顶级文件夹才能生效。
答案 1 :(得分:0)
令人惊讶的是,在Xcode的Build Settings
中,我添加了User Header Search Paths
非递归路径到我的项目。这解决了我的问题。
答案 2 :(得分:0)
当我在尝试通过在组中包含标题时遇到XCode问题时,我到这里结束了
#include "MyGroup/MyHeader.h"
结果是项目结构和文件系统不同步,所以我只需要从项目中删除我的组,将其放在Finder中的正确位置,然后将其拖放到正确的地方,对我有用。
我不确定是否需要这样做,但是我已经设置了应用程序的工作目录,因为我正在做一些游戏编程,需要能够加载.png并制作纹理。