Форум программистов, компьютерный форум CyberForum.ru

Инициалиация константы - C++

Восстановить пароль Регистрация
 
Dioxis
1 / 1 / 0
Регистрация: 04.03.2009
Сообщений: 83
15.02.2011, 12:44     Инициалиация константы #1
Здравствуйте, вообщем на шестом ВС вроде была такая возможность, а 2010 ругается:

error C2057: требуется константное выражение
C++
1
2
3
int c=42;
    const int b=c; 
    int Temp[b];
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2011, 12:44     Инициалиация константы
Посмотрите здесь:

встроенные константы в С++ (pi e) C++
C++ Константы в структурах
C++ Экспоненциальные Константы
C++ Символьные константы
C++ Константы, переменные
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
15.02.2011, 13:19     Инициалиация константы #2
Не совсем так, вот так правильно:
C++
1
2
   const int b=42; 
   int Temp[b];
а на это :
C++
1
2
   int c=42;
   const int b=c;
возможно многие компиляторы (тут еще от опций компиляции зависит) заругаются.
Dioxis
1 / 1 / 0
Регистрация: 04.03.2009
Сообщений: 83
15.02.2011, 22:01  [ТС]     Инициалиация константы #3
Ни один из вариантов не подходит, т.к. с раньше должна инкрементироваться. Еще предположения?
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
16.02.2011, 08:23     Инициалиация константы #4
Если нужно создать массив, количество элементов которого заранее не известно, тогда нужно использовать динамическое выделение памяти.
C++
1
int *b=new int[c];
Yandex
Объявления
16.02.2011, 08:23     Инициалиация константы
Ответ Создать тему
Опции темы

Текущее время: 00:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru