-3

プロジェクトでシングルトンを使用したい。このために、私はこれについて読んで、次のようなものを見つけました:

@interface MyManager : NSObject
{
    NSString *someProperty;
}

@property (nonatomic, retain) NSString *someProperty;

+ (id)sharedManager;

これを使用してコード内の一部のデータを共有したことは知っています。ここで私の質問は +(id) の意味と、私たちがそれを何と呼んだか、そしてそれの用途は何ですか

4

4 に答える 4

2

idクラスが不明な Objective-C オブジェクトへの参照を意味します。あなたの例では、次のものも使用できます。

+ (MyManager *)sharedManager;

*で記号を使用しないことに注意してくださいid

+はそれがクラスメソッドであることを意味します: のようなクラスで呼び出すメソッドです[NSString stringWithFormat:@"%d", 1]

-'[myString length]' のように、クラスのオブジェクト インスタンスで呼び出すメソッドであるインスタンス メソッドです。

于 2013-05-27T07:29:45.413 に答える
1

+で始まるより一般的なインスタンス メソッドとは対照的に、 はクラス メソッドを示します-。( id) は、このメソッドが Objective-C オブジェクトを返すことを示します。

于 2013-05-27T07:26:11.703 に答える