gpt4 book ai didi

ios - 从 prefix.pch 导入类

转载 作者:行者123 更新时间:2023-11-28 22:11:22 25 4
gpt4 key购买 nike

我遇到一个问题,目前我正在使用 xcode 5.0,当我从 prefix.pch 导入类时,它不会在 appdelegate.h 文件上给出建议。但它给出了关于其他 View Controller 的建议。我用谷歌搜索了一下,发现如果我们在 prefix.pch 中定义宏,就会出现这个问题。删除宏后仍然没有对 appdelegate 给出建议。
Suggestios 意味着如果我尝试写

 @property(strong,nonatomic) UINavigationController *navControler;

写完@property(strong,nonatomic) UINav xcode没有给出建议。但是如果我从 prefix.pch 文件中删除所有导入语句和宏,那么 xcode 会在 appdelegate 上给出建议。

enter image description here

最佳答案

从我的角度来看,我不想找到解决方法,而是想阐明实际问题。

所以当你想在 .pch(预编译头文件)中添加一些东西时,这意味着你想在程序实际编译和构建之前使用文件的内容。简而言之,pch 中包含的 header 充当 stub 代码、基本代码或可能是原封不动地使用的代码。

因此,如果您已经在 .pch 中包含了 appDelegate.h 文件并在 appDelegate.h 文件中编写了一些代码,那么编译器将尝试使用 'appDelegate. h` 来自 .pch 作为预编译信息。并且可能会导致 Xcode 后台处理的不确定状态,这不允许在已经预编译的文件中显示下拉帮助。

在我看来,.pch 中的 app delegate.h 位置不对。您可以在程序的任何位置包含 appDelegate.h 文件。然而,这也是不良类设计方法的信号。

此外,如果您想在 .pch 中添加 #define 语句和其他宏,那么这不是正确的方法。正确的做法是:

  1. 制作一个简单的 .h 文件,比如 constants.h
  2. constants.h 文件中添加所有的#defines & macros
  3. 在您的 .pch 文件中添加 #import "constants.h"
  4. 这应该可以解决您的问题。

希望对您有所帮助。

关于ios - 从 prefix.pch 导入类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22853754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com