我正在尝试创建一些字符串常量,所以我有以下内容:
常量.h
extern NSString* const CONSTANT_ONE;
常量.m
NSString *const CONSTANT_ONE = @"CONSTANT_ONE";
SomeOtherFile.m
#import "Constants.h"
... snip
NSString* something = CONSTANT_ONE;
Constants.m 列在目标构建阶段的"编译源代码"位中,当我查看侧边栏的"目标成员资格"部分时,它是目标的成员。
当我尝试编译时,出现如下错误:
Undefined symbols for architecture i386:
"_CONSTANT_ONE", referenced from:
-[SomeOtherFile someMethod:] in SomeOtherFile.o
我想我可能误解了一些基本的东西 - 任何人都可以帮助我解决这个错误吗?
我最初问题中的代码是正确的。我不知道为什么,但简单地关闭并重新打开 Xcode 解决了这个问题,而且它构建得很好。只是Xcode让自己感到困惑。