![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
wpp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 85 Регистрация: 25.5.2003 Репутация: нет Всего: нет |
Как правильно создать динамический многомерный массив в стиле С и освободить память?
|
|||
|
||||
RAN |
|
|||
Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 709 Регистрация: 14.3.2003 Где: Щёлково Моск.обл. Репутация: 5 Всего: 6 |
Уточни, через new или malloc. А проще всего через STL.
|
|||
|
||||
RAN |
|
|||
Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 709 Регистрация: 14.3.2003 Где: Щёлково Моск.обл. Репутация: 5 Всего: 6 |
А, я тебя понял. Ключевое слово - многомерный.
Если ни одна размерность не известно, то придётся использовать одномерный, в котором индекс будешь рассчитывать по известной формуле. Но есть и другой способ, в котором тебе неизвесна лишь одна размерность, т.е. динамична одна размерность: int arr[][80][20]; //только так C разрешает arr = new int[n][80][20]; //если не ошибаюсь !!! delete[] arr; А можешь написать класс многомерного массива, память выделяй в конструкторе, уничтожай в деструкторе и пиши методы для извлечения и внесения элементов, а лучше шаблон. Хотя уже есть STL и это официальный стандарт |
|||
|
||||
wpp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 85 Регистрация: 25.5.2003 Репутация: нет Всего: нет |
Ни одно измерение не известно заранее, и использовать надо calloc malloc realloc and free
|
|||
|
||||
Nastya |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 27.3.2002 Где: Мариуполь Репутация: 5 Всего: 44 |
Тогда действительно лучше создать одномерный и ндекс расчитывать
-------------------- Что бы понять рекурсию, надо понять рекурсию "Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |