Constantes

tibob51 Messages postés 268 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 13 mai 2013 - 7 mars 2005 à 11:37
tibob51 Messages postés 268 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 13 mai 2013 - 7 mars 2005 à 14:50
Bonjour a tous,

Je débute en prog et je commence a savoir utiliser les classes,mais
j'ai une question!
Une constante devant etre initialisé lors de sa création et sachant que on ne peut
pas initialiser de variable dans la déclaration de la classe;est il possible d'utiliser les
constantes dans une classe
Merci.
A++;
A voir également:

4 réponses

Vulpetrus Messages postés 70 Date d'inscription jeudi 22 mai 2003 Statut Membre Dernière intervention 21 décembre 2005
7 mars 2005 à 13:43
Ta classe à un constructeur donc il est possible d'initialiser les variables membres.

De plus il tout à fait possible d'utiliser des constantes dans une classe !

Détailles un peu plus ce que tu veux faire car je ne vois pas où est ton problème.

un exemple :



#define MA_CONSTANTE 10
class MaClasse
{
public:
MaClasse()
// le constructeur de la classe

{


this->Variable1 = 0; // initialisation d'une variable de la classe.



this->Variable2 = MA_CONSTANTE; //utilisation de constante



};
~MaClasse();

// Elements de la classe :

private:
int
Variable1;

int Variable2;
};


Etait-ce ton problème ?

++
0
tibob51 Messages postés 268 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 13 mai 2013 2
7 mars 2005 à 13:59
Voici un ti code pour illustré mon problème:

class MaClasse
{
public:
int valeur;
const double facteur;// Cette constante ne peut pas etre initialisée ici.
// Elle doit pourtant etre initialisée lors de sa création (en c++)
// Donc=>Imposible?
};

Voilà c'est peut etre mieux exposé.
Merci de ta réponse
0
Vulpetrus Messages postés 70 Date d'inscription jeudi 22 mai 2003 Statut Membre Dernière intervention 21 décembre 2005
7 mars 2005 à 14:46
Si tu veux que cette contante soit initialisée au moment de sa
création,tu peux l' initialiser au moment de la création de la classe.



donc utilise le constructeur de la classe !



dans l' header :



class MaClasse
{
public:
MaClasse()


{


facteur= 50;


};

....


};



ou dans le cpp :



MaClasse::
MaClasse()

{


facteur= 50;


}



j'espère que c bien ça que tu voulais ;)

++
0
tibob51 Messages postés 268 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 13 mai 2013 2
7 mars 2005 à 14:50
Ce serat de l'initialisée après sa création!!
Ben ok,je croyait que je ne pourrais pas l'initialiser...
Merci
0
Rejoignez-nous