Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
TpukcTep
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 13
#1

Расширяемый массив - C++

13.07.2013, 21:49. Просмотров 1760. Ответов 5
Метки нет (Все метки)

Подскажите как задать динамически расширяемый массив, не используя STL.
На теории, если массив переполнен, создаём массив в 2 раза больше и копируем туда исходный.
Но сталкиваюсь с такой проблемой, как сделать массив с тем же именем.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.07.2013, 21:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Расширяемый массив (C++):

Расширяемый массив - C++
Почему на выходе получаются "кракозябры" ? int main() { int* a = new int; for (size_t i = 0; i < 10; i++) { a =...

Динамически расширяемый массив - C++
Не получается добавить элементы в начало массива, прошу помочь/подсказать #include <iostream> using namespace std; class myVector {...

Поместить в динамически расширяемый массив объекты класса, производные от базового абстрактного класса - C++
Помогите пожалуйста новичку! (мне). Я хочу создать динамически расширяющийся массив указателей на базовый абстрактный класс,...

Ввести массив А. В массив В перенести все элементы массива А, стоящие правее максимального элемента, и имеющие нечетный индекс. Массив В отсортировать - C++
Добрый Вечер! Написал первую часть программы по этому заданию"Ввести массив А. В массив В перенести все элементы массива А, стоящие правее...

Массив: Как скопировать двумерный массив в другой массив? - C++
Как скопировать двумерный массив в другой массив?

Расширяемый интерфейс - C#
Доброго времени суток, кто читает тему. Передо мной возникла задача: реализовать программу, которая берет данные о форме из другого...

5
Croessmah
Ушел
Эксперт CЭксперт С++
13554 / 7705 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
13.07.2013, 22:14 #2
Цитата Сообщение от TpukcTep Посмотреть сообщение
Но сталкиваюсь с такой проблемой, как сделать массив с тем же именем.
Выделяем динамически память, храним указатель на область и сопутствующие данные. При необходимости перевыделяем память.
Всё это дело оборачиваем в класс
1
TpukcTep
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 13
13.07.2013, 22:19  [ТС] #3
Так, разве я тогда не буду использовать библиотеку STL?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13554 / 7705 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
13.07.2013, 23:06 #4
Цитата Сообщение от TpukcTep Посмотреть сообщение
Так, разве я тогда не буду использовать библиотеку STL?
Хотите используйте, хотите нет
0
increator
0 / 0 / 0
Регистрация: 13.07.2013
Сообщений: 3
13.07.2013, 23:37 #5
Вот смотри
http://www.youtube.com/watch?v=MjYjq360pz0
http://www.youtube.com/watch?v=lkNqANzkXEM
http://www.youtube.com/watch?v=1B986WA8f8A
http://www.youtube.com/watch?v=hY3VSpwyZOo
0
Issues
430 / 365 / 37
Регистрация: 06.08.2012
Сообщений: 961
14.07.2013, 00:17 #6
Цитата Сообщение от TpukcTep Посмотреть сообщение
На теории, если массив переполнен, создаём массив в 2 раза больше и копируем туда исходный.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
int main()
{
    const size_t size = 5;
    int* arr = new int[size];
 
    for (int i = 0; i < size; ++i) 
        arr[i] = i; 
 
    int* tmp_a = arr;
 
    const size_t size2 = size * 2;
 
    arr = nullptr;
    arr = new int[size2];
 
    for (int i = 0; i < size2; ++i)
    {
        if (i < size)
            arr[i] = tmp_a[i];
        else
            arr[i] = i;
    }
 
    for (int i = 0; i < size2; ++i)
        std::cout << arr[i] << std::endl;
 
    delete[] tmp_a;
    delete[] arr;
 
    return 0;
}
1
14.07.2013, 00:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.07.2013, 00:17
Привет! Вот еще темы с ответами:

Вывести на печать массив X, массив Z, массив Y, произведение элементов массива X, упорядоченный массив Y - QBasic
Вывести на печать массив X, массив Z, массив Y, произведение элементов массива X, упорядоченный массив Y. ...

Дан одномерный массив A из N элементов. Переписать положительные элементы массива в массив B, а отрицательные в массив C - Pascal
Дан одномерный массив A из N элементов. Переписать положительные элементы массива в массив B, а отрицательные в массив C.

Сформировать массив, который будет состоять из чисел, входящих как в массив A, так и в массив B - C (СИ)
Задание: На основе исходных массивов A и B (n и m – рабочие размеры массивов) сформировать массив C, который будет состоять из чисел,...

Дан массив целых чисел а(12). Переписать в массив х четные, а в массив у нечетные элементы массива а - Turbo Pascal
Помогите пожалуйста решить эту задачу. Массив a выводит на печать. Я пишу a mod 2 = 0 , а он мне 41 ошибку выдает. Что делать? Вот...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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