2012-06-08 29 views

cevap

5

elemanı ve sırasıyla ortak işlevler için bu yanıt gör. NSObject Sınıf ve kimliği Hiç C++ kullandıysanız bir nesne

olduğunu

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

, a + statik

28

- işlevlerine eşdeğerdir

Öyle ki örnek fonksiyonları ve + işlevleri sınıf (statik) işlevlerdir.

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

:

Yani sen Person adlı bir sınıf var ve aşağıdaki işlevleri

-(void)doSomething;

+(void)doSomethingElse;

aşağıdaki ile bu fonksiyonları çağırmak istiyorum diyelim [myPerson doSomething];

[Person doSomethingElse];

Yani, sözgelimi vs sınıfın kavramını varsayarak bir sözdizimi açıklamasının daha fazladır.

düzenleme:

sadece eklemek için: nesnel-C, gerçekte örneğinde bir sınıf işlevi çağırabilir, ancak etki sınıfının kendisi (esasen derler üzerinde çağırma farklı değildir aynı şey). Kafa karıştırıcı ve okunması yanıltıcı olarak

Yani Genellikle

[myPerson doSomethingElse]

yapabilirsiniz, bunu yapmaz. Bunu işaret ediyorum, böylece böyle bir yerde kodla karşılaşırsanız şaşırmayacaksınız.