当我用 Xcode 4.6 编译我的 iPhone 应用程序时,我看到一个奇怪的错误代码:
“架构 i386 的重复符号”。
我知道这个关于文件名或类名重复的问题。所以我尝试使用 Finder 中的搜索栏查找文件。我还尝试使用 Xcode 中的搜索栏搜索重复的类,但是我找不到它。我已经检查过我没有导入 .m 文件。
接下来我该怎么办?请给任何建议。
当我用 Xcode 4.6 编译我的 iPhone 应用程序时,我看到一个奇怪的错误代码:
“架构 i386 的重复符号”。
我知道这个关于文件名或类名重复的问题。所以我尝试使用 Finder 中的搜索栏查找文件。我还尝试使用 Xcode 中的搜索栏搜索重复的类,但是我找不到它。我已经检查过我没有导入 .m 文件。
接下来我该怎么办?请给任何建议。
我可以自己解决这个问题。
我在头文件中声明。
NSString * const FormatTypeTime = @"~~~~~";
我应该声明
静态 NSString * const FormatTypeTime = @"~~~~~";
我忘了使用“静态”。我在很多文件中使用了这个变量。这就是为什么每个文件看起来都重复的原因。
感谢您回答我的问题!
当同名文件被编译两次时会发生此错误。
转到项目目标-> 构建阶段-> 在“编译源”下查找相同文件的多次出现。您也可以在那里搜索文件名。
从那里删除多个事件。
如果在您的项目中多次添加文件,则删除重复文件并仅保留一个。
该错误表明,在您的任何 2 个文件中,变量名(或方法名)重复,具有全局范围。您可以通过以下方式解决此问题,
*)重命名变量或方法
或者
*) 将变量或方法的范围更改为本地(通过将声明语句添加到 .m 文件的接口部分。)