3

iPhone アプリを Xcode 4.6 でコンパイルすると、奇妙なエラー コードが表示されます。

「アーキテクチャ i386 のシンボルが重複しています」。

ファイル名またはクラス名の重複に関するこの問題を知っています。そこで、Finder の検索バーを使用してファイルを見つけようとしました。また、Xcode の検索バーで重複したクラスを検索しようとしましたが、見つかりませんでした。.m ファイルをインポートしていないことを既に確認しました。

次に何をすべきですか?何かアドバイスをください。

4

3 に答える 3

13

この問題は自分で解決できました。

ヘッダーファイルで宣言します。

NSString * const FormatTypeTime = @ "~~~~~";

宣言する必要があります

static NSString * const FormatTypeTime = @ "~~~~~";

「静的」を使用するのを忘れました。そして私はこの変数をたくさんのファイルで使用しました。これが、すべてのファイルが複製されたように見える理由です。

私の質問に答えてくれてありがとう!

于 2013-02-25T08:33:00.807 に答える
1

このエラーは、同じ名前のファイルが 2 回コンパイルされると発生します。

[プロジェクト ターゲット] -> [ビルド フェーズ] -> [ソースのコンパイル] で同じファイルが複数回出現するのを探します。そこでもファイル名を検索できます。

そこから複数のオカレンスを削除します。

ファイルがプロジェクトに複数回追加された場合は、重複するファイルを削除して 1 つだけを保持します。

于 2013-02-25T05:37:12.057 に答える
1

このエラーは、2 つのファイルのいずれかで、グローバル スコープを持つ変数名 (またはメソッド名) が重複していることを示しています。これを解決するには、

*)変数またはメソッドの名前を変更する

また

*)変数またはメソッドのスコープをローカルに変更する (宣言ステートメントを .m ファイルのインターフェイス セクションに追加することによって。)

于 2015-09-29T08:54:43.590 に答える