0

私はいくつかの文字列定数を作成しようとしているので、次のものがあります:

定数.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

ここで基本的なことを誤解している可能性があると思います-誰かがこのエラーを手伝ってくれますか?

4

1 に答える 1

1

最初の質問のコードは正しかった。理由はわかりませんが、Xcode を閉じて再度開くだけで問題が解決し、正常にビルドされました。Xcode自体が混乱しているだけです。

于 2012-06-13T22:21:50.490 に答える