2012-06-08 4 views

答えて

5

部材それぞれパブリック関数は、この回答を参照してくださいです。 NSObjectのはクラスであり、idはあなたがC++を使用している場合は、オブジェクト

ある

id object = [[NSObject alloc] init]; 
+ (id)alloc; 
- (id)init; 

は、+は静的

28

-機能と同等です

このようなことをインスタンス機能があり、 +関数はクラス(静的)関数です。

だから、あなたは以下でこれらの関数を呼び出します

-(void)doSomething;

+(void)doSomethingElse;

のは、あなたがPersonというクラスを持っているとしましょう、と次のような機能:

Person *myPerson = [[Person alloc] init];

[myPerson doSomething];

[Person doSomethingElse];

これは、インスタンス対クラスの概念を理解すると仮定すると、構文の説明の詳細です。

編集:

だけ追加する:Objective-Cで、(あなたが実際にインスタンス上のクラスの関数を呼び出すことができますが、効果はクラス自体でそれを呼び出すと変わりませんが、基本的にコンパイル同じこと)。

ですから、一般的に

[myPerson doSomethingElse]

を行うことができ、読んで混乱や誤解を招くよう、あなたはこれをしないだろう。私はそれを指摘しているので、どこかでこのようなコードに遭遇すれば驚くことはありません。