Re: Affectation const en C++

Startseite

Nachricht beantworten
Autor: Raphaël Dorado
Datum:  
To: guilde
Betreff: Re: Affectation const en C++

Salut,

Le 14/02/2017 à 10:33, Frédéric a écrit :
> Hello,
>
> J'essaye de compiler un code C++, et ça bute sur ceci :
>
> configccattitudewidget.h:68:52: error: ‘constexpr’ needed for in-class
> initialization of static data member ‘const float
> ConfigCCAttitudeWidget::DEFAULT_ENABLED_ACCEL_TAU’ of non-integral type
> [-fpermissive]
>     static const float DEFAULT_ENABLED_ACCEL_TAU = 0.1;

>
> Une idée de ce qui coince ?
>
> C'est dans la partie 'private' d'une classe...
>


J'ai trouvé cela sur StackOverflow :

http://stackoverflow.com/questions/370283/why-cant-i-have-a-non-integral-static-const-member-in-a-class

Essayer 'constexpr' à la place de 'const' si tu utilises un standard récent
ou bien :

> I don't know why it would treat a double different from an int. I thought I had used that form before. Here's an alternate workaround:
>
> class Now_Better
> {
>     static double const d;
> };

>
> And in your .cpp file:
>
> double const Now_Better::d = 1.0;
>


--Raf