Wywołanie konstruktora nie może pojawić się w wyrażeniu stałym

Przykro mi z powodu mojego nowego pytania, ale niewiele wiem o C ++. Czy ktoś może odpowiedzieć, dlaczego otrzymuję błąd „błąd: wywołanie konstruktora nie może pojawić się w wyrażeniu stałym” podczas kompilacji następującego kodu;

class EliminationWeight
{
 public:
    typedef double Type;
    static const Type MAX_VALUE = __DBL_MAX__;
    static const Type MIN_VALUE = -__DBL_MAX__;
};

Używam Ubuntu 12.04 i dołączonego do niego gcc. To nie jest mój kod i wiem, że ten kod prawdopodobnie działa poprawnie w 100% (być może w starszej wersji gcc lub innego kompilatora). Czy można szybko to naprawić?

Z góry dziękuję za wszelkie odpowiedzi, to jest właściwie mój pierwszy raz, kiedy pytam o coś na SO.

questionAnswers(3)

yourAnswerToTheQuestion