Comment créer des variables globales ?

TheSpace

Membre confirmé
10 Août 2002
62
2
56
Salut,

Je me lance dans la programmation avec les outils Developer d'Apple. Je programme en Objective-C.

Je ne sais pas comment définir des variables en Global afin de les utiliser dans différentes (IBAction).

Désolé si les termes que j'emploie ne sont pas corrects.

En résumé (pour ceux qui connaissent) je veux faire comme avec les Property sur Real Basic.

Merci
 
Je ne comprend pas très bien ton terme (IBAction). Je ne connais pas le Real Basic non plus. Je pense que tu veux dire par la les méthodes appelées par tes actions definies dans Interface Builder. Tu veux pouvoir modifier une seule et meme variable sur plusieurs methodes c'est ca ?
Mais si ca peut t'éclairer, si tu veux des variables globales qui peuvent etre utilisées dans toutes les méthodes d'une classe, il faut les declarer dans ton fichier d'interfaçage (.h)

Exemple :
Fichier "MaClasse.h"
----------------------------------
#import <Cocoa/Cocoa.h>

@interface MaClasse:NSObject
{
int maVariableGlobale;
}
-(IBAction)maMethode1:(id)sender;
-(IBAction)maMethode2:(id)sender;

@end

------------------------------------
Fichier "MaClasse.m"

------------------------------------
#import "MaClasse.h"

@implementation MaClasse

-(IBAction)maMethode1:(id)sender
{
maVariableGlobale=100;
}

-(IBAction)maMethode2:(id)sender
{
maVariableGlobale=200;
}

@end
 
Ben tu fais exactement comme en C, tu ecris :

int maVariableGlobale;

Il faut juste qu'elle ne soit pas definie dans une classe.

Apres, si tu es dans un autre fichier (dans une autre classe), je te conseille de faire un :
extern int i;


Mais bon, il faut bannir un maximum les variables globales!
Des objets et des accesseurs devraient suffire.

Tu peux instancier des objets dans un nib avec interface builder, ca te fera un "objet global".