5 votes

A propos du mot-clé "self".

+ (void)Foo;
- (void)Foo;

Dans la méthode, - (void)Foo le mot-clé self signifie une instance de la classe. Mais dans la méthode, + (void)Foo Que signifie le mot-clé self C'est-à-dire ? Est-ce que ça veut dire que Class ?

7voto

NSResponder Points 14459

self est l'un des deux paramètres implicites de chaque méthode. C'est un pointeur vers un objet, et initialement c'est l'objet qui a reçu le message pour invoquer la méthode qui s'exécute. Lorsque la méthode en question est une méthode d'instance, self sera une instance de la classe dans laquelle la méthode est définie, ou une de ses sous-classes. Dans le cas d'une méthode de classe, self sera l'objet de la classe.

5voto

Seamus Campbell Points 11752

Oui. Ce qui suit fonctionne très bien :

+(id)myObjectWithInt:(NSInteger)anInt {
    return [[[self alloc] initWithInt:anInt] autorelease];
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X