{C++} Déclaration d'une constante dans une classe

Fermé
PoYac - 14 oct. 2012 à 12:01
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 23 oct. 2012 à 15:58
Bonjour,
Je dois déclarer une constante dans un classe, cette constante contiendra la version du programme avec deux points (ex : 1.2.3).
1) Donc d'abord, je voudrais savoir pour vous quelle est le meilleur type pour contenir ce nombre.
2) Puis je voudrais savoir ce que je dois d'abord mettre dans le prototype de la classe ?
Exemple
class MaClasse {
public:
const static TYPE VERSION;
};

Puis par exemple dans le fichier cpp je mettrais ceci :
const TYPE MaClass::VERSION = 0.0.2;

Aussi je voudrais savoir si je dois déclarer cette constante statique ou non,

J'attends donc vos avis,
merci d'avance


1 réponse

Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
23 oct. 2012 à 15:58
Salut
1) int [3]
2) il me semble qu'il faut mettre :
class A {static const int version[3];};
puis
const int A::version[]={1,2,3};
Comme la version est propre à la classe et non l'objet, statique est plus logique.
évite les mots tout en majuscule qu'il convient de réserver au macros.
L'interet du tableau d'entier, c'est que tu peux facilement faire des tests sur les versions majeures mineures etc.
0