XCode 使用未声明的标识符,仅在打开文件时出现
XCode use of undeclared identifier, only appears if the file is opened
当我清理、构建和 运行 我的 XCode 项目时一切顺利,但如果我打开一个调用该函数的文件,则会出现使用未声明的标识符 'func()'。这是整个实现:
函数调用:
func();
并且 'func()' 在 .h 文件中被清除,如下所示:
#if __cplusplus
extern "C" {
#endif
extern void func();
#if __cplusplus
}
#endif
实现的 func() 是一个 cplusplus 库。
为什么只有文件打开时才会出现错误,但如果我不打开它,它 运行 并且工作正常?
Xcode 有两种生成错误消息的方法。通常这两个都会生成相同的消息,因此您不会检测到有两个系统。
第一个系统是语法着色和自动完成的编辑器。它还会在您写入错误后几乎立即显示错误消息。
第二个系统是构建日志中显示的错误。
我怀疑你的项目有一个复杂的包含设置。这可以防止第一个系统找到要包含的正确文件,因此它找不到 func()
.
的定义
当我清理、构建和 运行 我的 XCode 项目时一切顺利,但如果我打开一个调用该函数的文件,则会出现使用未声明的标识符 'func()'。这是整个实现:
函数调用:
func();
并且 'func()' 在 .h 文件中被清除,如下所示:
#if __cplusplus
extern "C" {
#endif
extern void func();
#if __cplusplus
}
#endif
实现的 func() 是一个 cplusplus 库。
为什么只有文件打开时才会出现错误,但如果我不打开它,它 运行 并且工作正常?
Xcode 有两种生成错误消息的方法。通常这两个都会生成相同的消息,因此您不会检测到有两个系统。
第一个系统是语法着色和自动完成的编辑器。它还会在您写入错误后几乎立即显示错误消息。
第二个系统是构建日志中显示的错误。
我怀疑你的项目有一个复杂的包含设置。这可以防止第一个系统找到要包含的正确文件,因此它找不到 func()
.