Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, Аноним, Вы писали:
А>>как объявить константу в классе?
А>>А>>class A {
А>> const int F /* = 123 */; // это - константная переменная-член
К> static const int G = 123; // вот так правильно... (старые компиляторы будут ругаться)
К> static const int H; // это - константная переменная - статический член (требует отдельной инициализации)
К> enum { I = 123 }; // ещё можно делать вот так
К> A() : F(123) {} // константы-члены нужно инициализировать в конструкторе
К> A(int x) : F(x*2) {} // причём в разных конструкторах - можно по-разному
А>>};
К>// где-то в недрах .cpp
К>const int A::H = 123;
А>>
спасибо большое!
правда, у меня (ms vs 6.0) сработал пример только с F. Как раз то, что нужно
получается, константной переменной-члену можно дать значение только в списке инициализаторов?