3

ARC を使用するようにプロジェクトを変換しようとしています。

私はそのような宣言されたプロパティを持っています:

@property (nonatomic, retain, setter=setSomeProperty:) SomeClass * someProperty;

インターフェイスでの setter メソッドの宣言:

-(void)setSomeProperty:(SomeClass *)value;

そして、次のようなセッターの実装があります。

-(void)setSomeProperty:(SomeClass *)value
{
    if (_value != value)
    {
         [_value release];
         _value = [value retain];
    }

    // Other things...
}

「Objective-C ARC に変換...」ツールを使用しようとすると、エラーが発生します。

エラー: プロパティ 'someProperty' のタイプがアクセサー 'setSomeProperty:' のタイプと一致しません [-Werror,3]

4

1 に答える 1

8

setSomePropertyインターフェイスからメソッドの宣言を削除します。は@property宣言を作成し、デフォルトのセッターは宣言されているものと同じです。

-(void)setSomeProperty:(SomeClass *)value;
于 2011-10-13T02:31:49.717 に答える