2013-11-27 8 views
17

私は(他のものと一緒に)このコードを持っていますどのように修正するのですか?レシーバータイプは前方宣言

+0

私はあなたのヘッダファイルをインポートするために忘れてしまったと思いますあなたが@class abcdのように宣言しました – Tendulkar

答えて

37

あなたは、ファイル/ YourApp-Prefix.pchをサポートするファイルにCoreData/CoreData.hをインポートする必要があります。

#ifdef __OBJC__ 
    #import <UIKit/UIKit.h> 
    #import <Foundation/Foundation.h> 
    #import <CoreData/CoreData.h> 
#endif 
+3

それは馬鹿ですが、うまくいきます。 – wander

11

順方向宣言は、クラスを@Classで宣言する必要があることを意味します。 .h/.mファイルにクラスをインポートし、問題を解決できるようにします。

4

は、あなたの.hかの.mファイル

#import <CoreData/CoreData.h> 
0
の先頭にこれを追加

私はファイルDDXML.hと作業を変更します。

ファイル:DDXML.h

変更:

#if TARGET_OS_IPHONE && 0 // Disabled by default 

へ:

#if TARGET_OS_IPHONE && 1 // Disabled by default 
2

私は、 "プロジェクト名 - Swift.h" ファイルの#importをインポートすることで問題を解決しましたSwiftクラスを使用するObjective Cクラスに含まれています。

0

これは頻繁にクラスの名前を変更して、ヘッダファイルで@classのMyClassを更新し忘れた後、私に起こる(明らかにコンパイルエラーがスローされません。)