Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Статическая таблица в определении класса 
V
    Опции темы
mekhanikus
Дата 6.7.2009, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вольноопределяющийся
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 16.6.2008
Где: Спасск-Дальний

Репутация: нет
Всего: 1



Пытаюсь создать класс, в определении которого замышлялась статическая таблица.
С инициализацией обычных статических членов разобрался, а вот с инициализацией таблицы - проблемы.
Умные книжки, имеющиеся в наличии, плавно обходят этот вопрос стороной.
Попытка заменить таблицу перечислением так же не увенчалась успехом.

Код

enum Week {_mon = 0xF01,
               _tue = 0xF02,
               _wdn = 0xF04,
               _thr = 0xF08,
               _fri = 0xF10,
               _sat = 0xF20,
               _sun = 0xF40 };


Предполагалось, например, что Week(3) == 0xF04, однако, C++ имеет на это свое мнение.

Направьте мысли в нужное русло.
PM MAIL   Вверх
mes
Дата 6.7.2009, 14:54 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Код

// *. h
class Week
{
...
  static const int  Value[];

};

// *.cpp
const int  Week::Value[] = { 0xF01, 0xF02, 0xF04, 0xF08, 0xF10, 0xF20, 0xF40 };


Это сообщение отредактировал(а) mes - 6.7.2009, 14:54


--------------------
PM MAIL WWW   Вверх
triclosan
Дата 6.7.2009, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 18.8.2006

Репутация: 2
Всего: 12



Вроде же стандарт с++03 разрешает инициализацию константных статических членов в объявлении класса.

Добавлено через 7 минут и 56 секунд
Ага, но не массивов. Поясните пожалуйста почему? 

Это сообщение отредактировал(а) triclosan - 6.7.2009, 15:33
PM MAIL   Вверх
mekhanikus
Дата 7.7.2009, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вольноопределяющийся
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 16.6.2008
Где: Спасск-Дальний

Репутация: нет
Всего: 1



Цитата(mes @ 6.7.2009,  14:54)
Код

// *. h
class Week
{
...
  static const int  Value[];

};

// *.cpp
const int  Week::Value[] = { 0xF01, 0xF02, 0xF04, 0xF08, 0xF10, 0xF20, 0xF40 };

Странно,  smile 
Все просто!
Что же я делал не так? 
Млин, поудалял все исходники, решил идти другим путем.

Ладно, еще вернемся к этому вопросу.

Это сообщение отредактировал(а) mekhanikus - 7.7.2009, 14:18
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0474 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.