1. ホーム
  2. iphone

[解決済み】インスタンスメッセージの受信者型***は、フォワード宣言である

2022-04-18 16:58:25

質問

iOS5アプリで、私は NSObject States クラスを作成し、それを初期化しようとしています。

states = [states init];

以下は init メソッドを States :

- (id) init
{
    if ((self = [super init]))
    {
        pickedGlasses = 0;
    }

    return self;
}

しかし、この行にはエラーがあります。 states = [states init];

受信者タイプ "States"例えばメッセージはフォワード宣言

どういう意味ですか?私は何を間違えているのでしょうか?

解決方法は?

つまり、基本的にはStateの宣言が含まれる.hファイルをインポートする必要があります。

ただし ロット あなたのコードには、他にもいろいろと問題があるようです。

  • を使用せずにオブジェクトを初期化しています。 +alloc 'ing it. それはうまくいきません。
  • オブジェクトを非ポインタ型として宣言している場合、それもうまくいきません。
  • を呼び出していない。 [super init]-init .
  • を使用してクラスを宣言しています。 @class をヘッダーに追加しましたが、そのクラスはインポートしませんでした。