Xcode文件夹和群组混淆

时间:2016-04-07 17:24:21

标签: c++ xcode include

我正在使用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",以便我可以轻松查看包含文件所属的目录/子文件夹?

3 个答案:

答案 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并制作纹理。