我不明白Xcode如何知道哪些头文件应该包含在哪个目标中?例如,如果我在Xcode项目中添加一个新文件,它会将.m文件添加到所选目标的编译源代码中,但是.h文件呢?我的目标如何知道应该使用哪些头文件?
tvz2xvvm1#
只有.m文件和资源文件是目标的一部分,.h不是。框架目标只需要复制标头,并且仅仅因为它们是框架版本的一部分(它们允许用户知道如何使用框架)。应用程序不需要标头,因为它们是独立编译的实体。标头(和pch文件)在编译期间使用,但在运行时不需要。
您希望文件在以下情况下成为目标的成员:
通过截图给予一个例子,我们在Xcode for library中控制头文件的方式在构建阶段是这样的:
您可以进一步读取此Apple Documentation来设置Xcode中头文件的可见性。
1条答案
按热度按时间tvz2xvvm1#
只有.m文件和资源文件是目标的一部分,.h不是。框架目标只需要复制标头,并且仅仅因为它们是框架版本的一部分(它们允许用户知道如何使用框架)。应用程序不需要标头,因为它们是独立编译的实体。标头(和pch文件)在编译期间使用,但在运行时不需要。
您希望文件在以下情况下成为目标的成员:
通过截图给予一个例子,我们在Xcode for library中控制头文件的方式在构建阶段是这样的:
您可以进一步读取此Apple Documentation来设置Xcode中头文件的可见性。