Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
2 / 2 / 1
Регистрация: 18.11.2009
Сообщений: 43
1

Расширение динамического массива

27.11.2009, 13:55. Показов 3712. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В С для работы с динамической памятью используются операторы:
malloc,calloc для выделения памяти
realloc для изменения размера
free для освобождения
В С++:
new для выделения памяти
delete для освобождения

Так вот, каким образом в С++ изменять размер динамического массива?
С помощью realloc? Не будет ли ошибкой выделять и освобождать память new и delete, но расширять realloc?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.11.2009, 13:55
Ответы с готовыми решениями:

Расширение динамического массива
Доброго времени суток. Прошу помощи. Моя проблема заключается в том, что не могу понять как...

Расширение динамического массива
Не знаю, как реализовать возможность расширения динамического массива. Код, которым задаю массив:...

Расширение динамического массива объектов
Здравствуйте, форумчане. Моя задача написать функцию,которая добавляет новый объект в динамический...

Расширение динамического массива
Ниже код, который безошибочно компилируется. Но при выполнении программа рушится. При расширении...

8
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
27.11.2009, 13:59 2
DragoDemon, юзать std::vector =)
1
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
27.11.2009, 14:01 3
DragoDemon,

Так вот, каким образом в С++ изменять размер динамического массива?

Сие не предусмотрено.

Не будет ли ошибкой выделять и освобождать память new и delete, но расширять realloc?

Это вызовет undefined behavior
1
159 / 156 / 47
Регистрация: 29.04.2009
Сообщений: 636
27.11.2009, 14:01 4
Не будет ли ошибкой выделять и освобождать память new и delete
В С++ так и делают обычно.а расширять через realloc нельзя.
1
2 / 2 / 1
Регистрация: 18.11.2009
Сообщений: 43
27.11.2009, 14:13  [ТС] 5
Как то странно это
Получается средствами С++ я вообще не могу изменять размер уже выделенного динамического массива?
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
27.11.2009, 14:15 6
DragoDemon,

Получается средствами С++ я вообще не могу изменять размер уже выделенного динамического массива?

Именно.
В С++ есть *настоящие* динамические массивы вместо этого анахронизма
1
2 / 2 / 1
Регистрация: 18.11.2009
Сообщений: 43
27.11.2009, 14:25  [ТС] 7
Цитата Сообщение от Rififi Посмотреть сообщение
Именно.
В С++ есть *настоящие* динамические массивы вместо этого анахронизма
А что подразумевается под словом "настоящие"?
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
27.11.2009, 16:07 8
DragoDemon,

А что подразумевается под словом "настоящие"?

которые представляют собой объект языка C++, а не просто кусок памяти неизвестного размера
1
Эксперт С++
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
27.11.2009, 17:21 9
DragoDemon, У меня есть подозрение, что Rififi имеет ввиду шаблоны класса CArray
1
27.11.2009, 17:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2009, 17:21
Помогаю со студенческими работами здесь

Передача массива данных в Excel или создание двумерного динамического массива
Нашел на просторах вот такое: Dim oExcel As Object Dim oBook As Object Dim oSheet As...

Создайте класс динамического массива, в котором реализована проверка выхода за границы массива
Создайте класс динамического массива, в котором реализована проверка выхода за границы массива....

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

Функция с применением динамического массива, чтобы размер массива увеличивался по мере необходимости
Ребята, подскажите, кто может, каким образом создать функцию с применением динамического массива,...

Создайте класс динамического массива, в котором реализована проверка выхода за границы массива
Создайте класс динамического массива, в котором реализована проверка выхода за границы массива....

Почему при создании динамического массива через new ячейки массива имеют значение -842150451?
Я хотел бы узнать почему при создании динамического массива через операцию new ячейки массива имеют...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru