Как объявить статическую постоянную переменную-член класса, который включает в себя некоторые простые вычисления?

Я попытался связать одну статическую константную переменную-член с другой статической константной переменной в классе. Мотивация заключается в том, что если мне нужно будет изменить одно значение позже (при кодировании), мне не нужно будет менять все, что связано друг с другом, одно за другим.

Например:

class Box
{
    public:
        Box();
    private:
        static const double height = 10.0;
        static const double lid_height = 0.5 + height;
};

Он не компилируется, и ошибка заключалась в том, что «Box :: height не может появиться в константном выражении». Итак, я думаю, вы должны ввести значение статического константного члена. Но есть ли способ связать один член с другой переменной-членом того же класса, учитывая, что все они будут static const ??

10
задан tuzzer 21 February 2012 в 02:24
поделиться