Je souhaite créer un tableau statique constant à utiliser dans mon fichier d'implémentation Objective-C similaire à quelque chose comme celui-ci au niveau supérieur de mon fichier ".m":
static const int NUM_TYPES = 4;
static int types[NUM_TYPES] = {
1,
2,
3,
4 };
Je prévois d'utiliser NUM_TYPES
plus tard dans le fichier, je voulais donc le mettre dans une variable.
Cependant, lorsque je fais cela, j'obtiens l'erreur
"Types" modifiés de manière variable à la portée du fichier "
Je suppose que cela peut avoir quelque chose à voir avec la taille du tableau étant une variable (je ne reçois pas ce message lorsque j'y mets un littéral entier, comme static int types[4]
).
Je veux résoudre ce problème, mais peut-être que je fais tout faux ... J'ai 2 objectifs ici:
- Pour avoir un tableau accessible dans tout le fichier
- Pour encapsuler
NUM_TYPES
dans une variable afin que je n'ai pas le même littéral dispersé à différents endroits dans mon fichier
Aucune suggestion?
[EDIT] J'ai trouvé ceci dans la FAQ C: http://c-faq.com/ansi/constasconst.html
#define kNUM_TYPES 4
?