为什么没有项目名 - Prefix.pch在Xcode 6自动创建的?为什么没有项目名 - Pr

2019-05-09 06:17发布

为什么没有ProjectName-Prefix.pch中自动创建Xcode 6

被预编译头文件不再需要?

我应该在哪里写在代码ProjectName-Prefix.pch过吗?

Answer 1:

我怀疑因为模块,删除对于需要的#import <Cocoa/Cocoa.h>

至于放在哪里的代码,你会放一个前缀头文件,没有密码,你应该把一个前缀头。 把你的进口到需要它们的文件。 把你定义成他们自己的文件。 把你的宏...行不通的。 停止编写宏,除非没有其他方法(例如,当你需要__FILE__ )。 如果您确实需要宏,把它们放在一个头文件和包含它。

前缀头文件是必要的事情,是巨大的和几乎所有在整个系统中(如使用Foundation.h )。 如果你有一些巨大的和无处不在的,你应该重新考虑你的架构。 前缀头使代码重用辛苦,引入微妙的构建问题,如果列出的任何文件都可以改变。 避免他们,直到你有一个严重的编译时间的问题,你能证明用一个前缀头显着改善。

在这种情况下,你可以创建一个并把它传递到铛,但它是令人难以置信的罕见的,这是一个好主意。


编辑:关于HUD你在所有的视图控制器使用您的具体问题,是的,你绝对应该将其导入到实际使用它的每一个视图控制器。 这使得依赖关系明确。 当你在一个新的项目(如果你建立你的控制器,以及这是常见的),重用你的视图控制器,你会立刻知道它的需要。 这是一个类别,它可以使代码很难重复使用,如果他们是隐尤为重要。

PCH文件是不是有摆脱上市的依赖。 你应该还导入UIKit.hFoundation.h根据需要,作为Xcode的模板做。 究其原因,PCH是真正巨大的标题(UIKit的等)打交道时提高生成时间。



Answer 2:

如果没有问题,如果是正确与否,你可以添加PCH手动档:

  1. 新的PCH文件添加到项目: 新建文件>其它> PCH文件

  2. 在目标的Build设置选项, 前缀头的值设置为您的PCH文件的名称,项目名称为前缀(即名为项目TestProject ,并命名为PCH文件MyPrefixHeaderFile ,增加值TestProject/MyPrefixHeaderFile.pch到的plist)。

    提示:您可以使用之类的东西$(SRCROOT)$(PROJECT_DIR)去的地步,你把路径.pch项目。

  3. 在目标的Build设置选项, 预编译前缀头的值设置为YES



Answer 3:

您需要创建自己的PCH文件
添加New file -> Other-> PCH file

那么这个PCH文件的路径添加到您的构建setting->prefix header->path

($(SRCROOT)/filename.pch)



Answer 4:

我会告诉你一个PIC!

  1. 添加新文件

  2. 转到项目/构建设置/ APPL LLVM 6.0语言



Answer 5:

要添加文件 - .PCH

1)新的.PCH文件添加到项目 - >新建文件 - >其他 - > PCH文件

2)转到您的项目的构建设置。

3)搜索“前缀头”。 你可以发现,在苹果LLVM。

4)在现场粘贴此$(SRCROOT)/yourPrefixHeaderFileName.pch

5)清洁并生成项目。 而已!!!



Answer 6:

如果您决定手动添加.PCH文件,你要使用的Objective-C一样的Xcode 6之前,你还必须进口的UIKit和基础架构的.PCH文件。 否则,你将不得不在每个头文件中手动导入这些框架。 您仍然可以添加以下代码,因为它测试所使用的语言:

#ifdef __OBJC__
    #import <UIKit/UIKit.h>
    #import <Foundation/Foundation.h>
#endif


Answer 7:

使用 :

$(PROJECT_DIR)/项目名称/ PrefixHeader.pch



Answer 8:

对于增加新的PCH文件,请按照波纹管的步骤:

(1)添加新fiew - 选择iOS版 - 其他与PCH文件

(2)添加到您的项目该PCH文件的路径 - BuildSetting - 苹果LLVM 6.0语言

添加设置前缀头路径YourApplicationName(根路径)/filename.pch



文章来源: Why isn't ProjectName-Prefix.pch created automatically in Xcode 6?
标签: ios xcode xcode6