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

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

Войти
Регистрация
Восстановить пароль
 
-=MASTER=-
77 / 71 / 5
Регистрация: 15.03.2012
Сообщений: 259
#1

Пересоздание массива - C++

21.07.2012, 15:02. Просмотров 345. Ответов 3
Метки нет (Все метки)

Можно ли однажды объявив массив float x=new x[10];
объявить его заново, например так x=new[34]; ?
Может его как то обнулить надо. Ну в общем, чтоб имя переменной было одинаковое, а размер массива по этому указателю менялся, собственно как и значения в самом массиве.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2012, 15:02     Пересоздание массива
Посмотрите здесь:

произведение элементов массива, расположенных между максимальным и минимальным элементами массива C++
C++ Произведение элементов массива, расположенных между максимальным и минимальным элементами массива
Постороить из 2 мерного массива в 1 мерный, который содержит все элементы 2 мерного массива , содержащихся по периметру массива C++
Каждый элемент массива A[k] заменить средним значением первых k элементов массива C++
C++ Заменить все элементы массива, находящиеся в интервале (L, R), на наибольший элемент массива
Пересоздание массива в функции и дальнейшее его использование в main C++
Подсчитать число элементов массива A[n], превосходящих среднее геометрическое этого массива C++
Заменить элементы массива,стоящие на нечетных позициях, на среднее арифметическое массива C++
Найти номер элемента массива У, ближайшего по значению к наименьшему элементу массива Х. C++
в первой половине массива расположить элементы из нечетных позиций исходного массива C++
Даны два массива. Сформируйте массив С, состоящий из общих элементов массива А и В C++
C++ Переставить четвертый элемент массива на последнее место, сдвигая элементы массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
21.07.2012, 15:06     Пересоздание массива #2
Можно. Только перед новым выделением памяти нужно старую удалить
C++
1
2
3
4
5
6
7
float *x = new float[10];
...
delete [] x;
 
x = new float[34];
...
delete [] x;
-=MASTER=-
77 / 71 / 5
Регистрация: 15.03.2012
Сообщений: 259
21.07.2012, 15:19  [ТС]     Пересоздание массива #3
а разве после delete сам указатель не теряется?

Добавлено через 4 минуты
А..а. всё пучком. В общем ДАНКЕ
Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
21.07.2012, 15:29     Пересоздание массива #4
Цитата Сообщение от -=MASTER=- Посмотреть сообщение
а разве после delete сам указатель не теряется?
Если не ошибаюсь. После delete и новым new сам указатель снова может указывать на старый адрес. А может и совсем другой выбрать. Да это и неважно. Главное то, что можно много раз так создавать массивы с разным размером.
Yandex
Объявления
21.07.2012, 15:29     Пересоздание массива
Ответ Создать тему
Опции темы

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