Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone Xcode";使用未声明的标识符“;错误,编译/运行正常_Iphone_Ios_Xcode_Ipad_Compiler Errors - Fatal编程技术网

Iphone Xcode";使用未声明的标识符“;错误,编译/运行正常

Iphone Xcode";使用未声明的标识符“;错误,编译/运行正常,iphone,ios,xcode,ipad,compiler-errors,Iphone,Ios,Xcode,Ipad,Compiler Errors,我遇到了一个令人讨厌的问题,它妨碍了我的工作流程。在我的项目中,到处都有“未声明标识符的用户”错误。它们都引用一个类,特别是一个主题类。我检查了我的导入是否有循环引用,没有。我真的很困惑 下面是错误的屏幕截图。我会在构建日志中发布错误以获取更多详细信息,但没有任何错误。它的构建和运行都很好 我尝试过清理、删除派生数据。。。有什么想法吗?不幸的是,这些错误在Xcode中很常见。如果它能一直自动刷新它的错误列表那就太好了,但它并不总是这样。发生这种情况时,我强烈建议您重新启动Xcode,它将刷新其

我遇到了一个令人讨厌的问题,它妨碍了我的工作流程。在我的项目中,到处都有“未声明标识符的用户”错误。它们都引用一个类,特别是一个主题类。我检查了我的导入是否有循环引用,没有。我真的很困惑

下面是错误的屏幕截图。我会在构建日志中发布错误以获取更多详细信息,但没有任何错误。它的构建和运行都很好


我尝试过清理、删除派生数据。。。有什么想法吗?

不幸的是,这些错误在Xcode中很常见。如果它能一直自动刷新它的错误列表那就太好了,但它并不总是这样。发生这种情况时,我强烈建议您重新启动Xcode,它将刷新其错误缓存,并有望解决您的问题。

您是如何包含此类的?在大多数情况下,我只是在头文件和/或正文中显式地包含该类,而不是*.pch文件。在我的例子中,这个错误就消失了

删除派生数据有时也会起作用。您最近是否碰巧更改了首选项中的位置。当我将ramdisk用于派生数据,然后返回默认值时,我也遇到了这个错误。这是最恼人的情况-因为它导致此错误出现在几乎每个文件中


与以前的版本相比,在Xcode 4.4中出现此错误的频率更高。

您是否正确地包含了库文件?看看这个。有时,如果我们没有包含正确的文件,或者缺少某些内容或未连接UI,可能会出现ARC问题。

我也遇到了同样的问题,并注意到所有未声明的标识符都是在我的pch文件中的文件中声明的

考虑到这一点,我从pch文件中删除了一个#import行,并重新编译,结果如预期的那样失败。然后我将删除的行放回,重新编译,并正常编译,所有错误都消失了


如果上述解决方案不能解决问题,希望这个简单的解决方案能帮助你们中的一些人。

我也有同样的问题。关闭和打开XCode没有帮助


我通过检查其他目标中的错误并修复它们来解决这个问题(我的单元测试目标中有大量错误)。我还将标题链接从h文件移动到m文件。但我很确定,第一件事很关键

对于其他遇到同样问题并尝试了上述所有解决方案却没有结果的人,也许你应该尝试一下我所做的事情。我解决了这个问题,只需从Mac电脑上拔下iPhone的USB电缆,然后重新插上这些电缆。之后,再次重建,所有未声明的标识符错误都消失了。

我也有同样的错误。在我的例子中,它位于以下代码行:

- (void)playerItemDidReachEnd:(NSNotification *)notification {
      // some code
  }
我的错误消息是:

Use of undeclared identifier 'playerItemDidReachEnd'
我尝试将这一行添加到.h文件中:

- (void)playerItemDidReachEnd:(NSNotification *)notification;
我清理了它,重新启动了我的macbook,但我仍然发现了错误

最后,我决定尝试删除.h文件中的行。然后我将其粘贴到一个文本文件中,然后将其复制并粘贴回.h文件

现在我打扫干净了,瞧!!!没有更多的错误。想想看,在VBA中有时会发生这种情况。不知何故,一行代码中似乎有看不见的格式。所以我想这可能发生在xCode上。剪切它,粘贴到文本文件中,剪切文本文件,然后粘贴回原来的位置-在我的例子中修复了它

----更新----- 以上是我的答案。抱歉,显然还有别的问题

清理后,我的错误消失了。现在我尝试构建并运行我的应用程序。错误又回来了!所以这次我在剪切所有文本并粘贴到文本文件后重新创建了类文件。我为我的.m和.h文件都这么做了。但是现在,在尝试运行之后,错误又回来了。很抱歉我不知道如何删除这篇文章,因为它不是一个答案

尝试构建并运行我的应用程序。错误又回来了


还有一个错误消息,我缺少一个括号(})。最后,我看了一下这个方法,就在这个方法之前,我确信它缺少了结束括号!就这样

对我来说,问题是我创建了UnityInterface.h/m文件来处理obj-c到c#接口。UnityInterface.h已经由Unity定义。我将自己的UnityInterface重命名为_UnityInterface,现在一切都正常了。

只为以后可能遇到此问题但找不到任何解决方案的人发布此消息:
如果您有任何带有pragma标记的#If语句,并且这些语句仅在程序处于调试模式时执行,那么当您尝试存档/导出时,显然会导致其中声明的任何内容都不会被声明。

可能会晚些回答

我最近有这个问题。我通过更新我的操作系统,然后更新Xcode来解决这个问题。我尝试单独更新Xcode,但没有成功,因为Xcode 9.4需要操作系统高版本10.13。*


愉快的更新:)

It编译时错误

Use of undeclared identifier '<class_name>'
使用未声明的标识符“”
我在开发自己的框架和应用程序时遇到了这个问题。Objective-C consumer->Objective-C静态框架

报告导航器有一个清晰的描述

umbrella header for module '<module_name>' does not include header '<class_name>.h'
模块“”的伞形头不包括头“.h”
解决方案是将
#import.h
添加到框架目标的伞形头中

是否链接到所有正确的库?是否尝试重新启动Xcode?我在更改文件扩展名(
.m
主要是
.mm
)以及重新启动Xcode通常会修复这些类型的错误。你们都是对的。忘了重新编译我的静态库。应分别在项目中进行编辑。这样做了,它仍然存在。重新启动Xcode,现在一切都消失了。谢谢大家!编辑:没关系,仍在发生:(我在xcode 7.3中面临同样的问题。请为我提供sameEve的解决方案