Utilisation de NSMutableArray dans déclaration de Class
guil182
Membre
Bonjour,
Merci d'avance à l'ensemble de la communauté pour votre aide.
Je suis nouveau en terme de programmation mac et j'ai quelques problèmes avec le langage .
Voici mon soucis :
J'ai deux classes definies dans : MeteoJour.h et MeteoNuit.h
un classe Meteo regroupant les deux premieres...
#import <Foundation/Foundation.h>
@class MeteoJour;
@class MeteoNuit;
@interface Meteo : NSObject {
@private
// Caracteristiques de la meteo du jour
MeteoJour *Meteojour;
MeteoNuit *Meteonuit;
}
@property (nonatomic, retain) MeteoJour *Meteojour;
@property (nonatomic, retain) MeteoNuit *Meteonuit;
@end
Je crée une classe prévision qui a certaines caractéristiques et je voudrais également qu'elle ait un tableau de "Meteo"...et je bloque sur la syntaxe de declaration :
Faut il declarer : NSMutableArray *MeteoJ; et ensuite l'initialiser avec les données de la class ?
ou peut-on lui dire directement MeteoJ tu seras un tableau prévisionnel de 4 Meteo.....et la je sais pas comment le définir.
Merci encore de votre aide.
Merci d'avance à l'ensemble de la communauté pour votre aide.
Je suis nouveau en terme de programmation mac et j'ai quelques problèmes avec le langage .
Voici mon soucis :
J'ai deux classes definies dans : MeteoJour.h et MeteoNuit.h
un classe Meteo regroupant les deux premieres...
#import <Foundation/Foundation.h>
@class MeteoJour;
@class MeteoNuit;
@interface Meteo : NSObject {
@private
// Caracteristiques de la meteo du jour
MeteoJour *Meteojour;
MeteoNuit *Meteonuit;
}
@property (nonatomic, retain) MeteoJour *Meteojour;
@property (nonatomic, retain) MeteoNuit *Meteonuit;
@end
Je crée une classe prévision qui a certaines caractéristiques et je voudrais également qu'elle ait un tableau de "Meteo"...et je bloque sur la syntaxe de declaration :
Faut il declarer : NSMutableArray *MeteoJ; et ensuite l'initialiser avec les données de la class ?
ou peut-on lui dire directement MeteoJ tu seras un tableau prévisionnel de 4 Meteo.....et la je sais pas comment le définir.
Merci encore de votre aide.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
EN objective-C les tableaux peuvent contenir des objets de classes différentes. Il ne faut donc pas les typer dans la déclaration.
Ainsi, dans l'interface mettre
NSMutableArray * meteoJ;
Dans l'implémentation (le .m) ,
meteoJ=[[NSMutableArray alloc] init] ;
[meteoJ addObject:meteoHier]
[meteoJ addObject:meteoAujourdHui]
...
ou
meteoJ=[[NSMutableArray arrayWithObjects:meteoHier,meteoAujourdHui,nil] retain];
et peut-être plus loin
[meteoJ addObject:meteoDemain];
Guillaume