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.