Der Aufruf eines Konstruktors kann nicht in einem Konstantenausdruck erscheinen

Es tut mir leid für meine Anfängerfrage, aber ich weiß nicht viel über C ++. Kann jemand antworten, warum ich den Fehler "Fehler: Ein Aufruf eines Konstruktors kann nicht in einem konstanten Ausdruck erscheinen" erhalte, wenn der folgende Code kompiliert wird;

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

Ich benutze Ubuntu 12.04 und den dazugehörigen gcc. Es ist nicht mein Code und ich weiß, dass dieser Code wahrscheinlich zu 100% in Ordnung ist (vielleicht in einer älteren Version von gcc oder einem anderen Compiler). Gibt es eine schnelle Möglichkeit, das Problem zu beheben?

Vielen Dank im Voraus für alle Antworten, dies ist tatsächlich mein erstes Mal, dass ich bei SO etwas frage.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage