1

私はXcodeに本当に慣れていません。特定の場所で変数を初期化するときの意味が正確にはわかりませんが、私のコードは機能するので、これは問題ではありません...今のところ. とにかく、ここに私の .h ファイルがあります。どこにでも「----」があるのは、そこにコードがあることを意味します。

#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>

NSInteger charactersLocked[3] = {0,0,1};
int charSel = 0;

@interface Tutorial : UIViewController 
{
    -------
}
------
@end

そのため、別の .m ファイルにある charactersLocked 配列にアクセスする必要があります。それを File2 と呼び、これを File1 と呼びましょう。File2.m で "File1.h" を #import しようとすると、プログラムがクラッシュし、charactersLocked と charSel の両方で次のエラーが表示されます。

 duplicate symbol _charactersLocked in:
    /Users/me/Library/Developer/Xcode/DerivedData/SpaceRace-
    apawbkpiogvbvddranqfltyybuqr/Build/Intermediates/SpaceRace.build/Debug- 
    iphoneos/SpaceRace.build/Objects-normal/arm64/Tutorial.o
    /Users/me/Library/Developer/Xcode/DerivedData/SpaceRace
    apawbkpiogvbvddranqfltyybuqr/Build/Intermediates/SpaceRace.build/Debug-
    iphoneos/SpaceRace.build/Objects-normal/arm64/Space.o

私はこれが何であるか分かりません。オンラインで解決策を探してみましたが、どれもうまくいかないようです。誤って .m ファイルをインポートしたわけではありません。その特定の配列にアクセスする簡単な方法がある場合は、お知らせください。この投稿が恐ろしくフォーマットされていたら申し訳ありませんが、初めてなので我慢してください. ありがとうございました。

4

1 に答える 1