为什么#importing .m文件修复了一个未定义的符号错误?

时间:2013-07-17 02:56:59

标签: objective-c xcode import

当我收到错误时,我正在Xcode的目标c中创建一个程序:

  

架构x86_64的未定义符号:
    “_OBJC_CLASS _ $ _ Logger”,引自:         main.o中的objc-class-ref   ld:找不到架构x86_64的符号
  clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

然后我改变了

#import "logger.h"

#import "logger.m"

并且错误消失了。为什么要导入.m文件修复它?顺便说一下,程序运行正常。

1 个答案:

答案 0 :(得分:2)

我认为你应该只导入头文件。当.m文件未包含在您的类中时,您会收到上述错误。当您的.m文件不在构建阶段下的已编译源中时,可能会发生这种情况。首先要看它是否在编译源中。然后尝试导入.h文件。