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

Преобразовать int в const int для установки размера массива - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
WriterMix
1 / 1 / 0
Регистрация: 06.11.2011
Сообщений: 68
23.12.2012, 21:45     Преобразовать int в const int для установки размера массива #1
Добрый вечер всем!
Столкнулся с такой нестандартной проблемой.
Нужно преобразовать значения типа int в const int, чтоб константная переменная использовалась для размера созданного массива.
C++
1
2
3
4
5
  int size;
  size = (int)(i/5); // size = 2
 
 //const int size=2; // вот так все хорошо
 int MAS[size];       // а так не работает, нужно преобразование типов.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11845 / 6824 / 771
Регистрация: 27.09.2012
Сообщений: 16,919
Записей в блоге: 2
Завершенные тесты: 1
23.12.2012, 21:47     Преобразовать int в const int для установки размера массива #2
Выделяйте память в куче.
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,094
23.12.2012, 21:48     Преобразовать int в const int для установки размера массива #3
Не надо так делать. Если вам нужен массив, размер которого рассчитывается во время выполнения, выделяйте память в куче.
WriterMix
1 / 1 / 0
Регистрация: 06.11.2011
Сообщений: 68
23.12.2012, 21:54  [ТС]     Преобразовать int в const int для установки размера массива #4
Можно пример для моего случая?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11845 / 6824 / 771
Регистрация: 27.09.2012
Сообщений: 16,919
Записей в блоге: 2
Завершенные тесты: 1
23.12.2012, 22:01     Преобразовать int в const int для установки размера массива #5
C++
1
2
3
4
int size=i/5;
int * MAS=new int[size];
//быдлокод
delete [] MAS; //освобождение выделенной памяти
Динамическое выделение памяти и указатели
Yandex
Объявления
23.12.2012, 22:01     Преобразовать int в const int для установки размера массива
Ответ Создать тему
Опции темы

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