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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
SlavaStas
3 / 3 / 0
Регистрация: 28.02.2013
Сообщений: 121
#1

добавление элементов в динамичный массив - C++

14.05.2013, 00:21. Просмотров 555. Ответов 6
Метки нет (Все метки)

Столкнулся с такой проблемой: надо сделать динамический массив в котором не известно конечное количество эллементов вплоть до окончания работы алгоритма. Можно ли как-то на каждом шаге цикла добавлять новую ячейку памяти для массива, типа как в С# ArrayList.Add();?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2013, 00:21     добавление элементов в динамичный массив
Посмотрите здесь:

Создать динамичный класс для операций с динамическими массивами чисел действительного типа C++
C++ Динамичный массив на C++
Динамичный выделение памяти C++
Добавление элементов в динамический двумерный массив C++
C++ Добавление элементов в динам. массив с последующей сортировкой
Добавление элементов в одномерный массив C++
C++ Добавление строки в массив
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12542 / 7104 / 797
Регистрация: 27.09.2012
Сообщений: 17,521
Записей в блоге: 2
Завершенные тесты: 1
14.05.2013, 00:23     добавление элементов в динамичный массив #2
Перевыделять память.

Добавлено через 24 секунды
Можете использовать std::vector вместо обычных массивов
ТОрчОК
Заблокирован
14.05.2013, 00:25     добавление элементов в динамичный массив #3
std::vector vec;
vec.push_back(x);
как-то так
SlavaStas
3 / 3 / 0
Регистрация: 28.02.2013
Сообщений: 121
14.05.2013, 00:34  [ТС]     добавление элементов в динамичный массив #4
Croessmah, проблема в том, что я ничего не знаю о векторах(

если я буду перевыделять память, данные, которые уже есть в массиве, не исчезнут? или использовать еще один такой же массив, чтобы копировать туда данные на данном шаге, а потом обратно?
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
14.05.2013, 00:50     добавление элементов в динамичный массив #5
SlavaStas, Да ничо не потеряется vector это динамический массив.
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12542 / 7104 / 797
Регистрация: 27.09.2012
Сообщений: 17,521
Записей в блоге: 2
Завершенные тесты: 1
14.05.2013, 00:53     добавление элементов в динамичный массив #6
Цитата Сообщение от SlavaStas Посмотреть сообщение
если я буду перевыделять память, данные, которые уже есть в массиве, не исчезнут?
копировать из старого в новый. Если простой тип, то можно и си'шный realloc использовать
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2013, 01:24     добавление элементов в динамичный массив
Еще ссылки по теме:

C++ Добавление строки в массив
Динамичный массив в классе C++
Отсортировать одномерный динамичный массив методом пузырька C++
Добавление текста в массив C++
C++ Создать массив структур, который можно редактировать: поиск по заданному полю, удаление и добавление элементов

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

Или воспользуйтесь поиском по форуму:
treyk
 Аватар для treyk
53 / 53 / 7
Регистрация: 28.06.2012
Сообщений: 224
Завершенные тесты: 1
14.05.2013, 01:24     добавление элементов в динамичный массив #7
Цитата Сообщение от SlavaStas Посмотреть сообщение
проблема в том, что я ничего не знаю о векторах(
Если проблема только в этом, а не в том, что через vector делать нельзя, то вперёд) Ничего сложного нет.
Yandex
Объявления
14.05.2013, 01:24     добавление элементов в динамичный массив
Ответ Создать тему
Опции темы

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