2009-07-12 7 views
1

Je me demandais simplement si c'était possible ... si j'ai une "classe statique" (une classe avec un tas de méthodes statiques) est-il possible d'avoir une variable de classe et d'y accéder via l'un des les méthodes statiques? Je reçois un avertissement de "variable d'instance accédée dans la méthode de classe". Je ne comprends peut-être pas. Y a-t-il quelqu'un qui peut répondre à cette question?Classes statiques avec l'iPhone

Répondre

5

Vous pouvez utiliser des variables statiques pour mettre en œuvre l'équivalent des variables de classe:

// Foo.h 
@interface Foo : NSObject { 
} 
+ (NSObject*)classVariable; 
@end 

// Foo.m 
#import "Foo.h" 

static NSObject* classVariable; 

@implementation Foo 
+ (NSObject*)classVariable { 
    return classVariable; 
} 
@end 
+1

Fondamentalement correct, mais vous devez initialiser les variables membres que vous souhaitez utiliser cette façon, soit en écrivant accesseurs pour eux ou par en utilisant + (void) initialiser sur cette classe, il est appelé par le runtime avant le début du programme –

+0

Cool, merci beaucoup je suppose que j'étais juste stupide;) –

Questions connexes