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

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

Войти
Регистрация
Восстановить пароль
 
sooqua
15 / 9 / 0
Регистрация: 23.02.2012
Сообщений: 135
#1

Динамический массив указателей - C++

30.11.2012, 00:35. Просмотров 899. Ответов 8
Метки нет (Все метки)

Есть класс "блока" - MapBuilderClass::BlockClass. Надо создать массив из MapBuilderClass::BlockClass* (из указателей на "блок"), изменять его размер в цикле и добавлять новые указатели.

Пробовал так:
C#
1
2
3
4
5
6
7
8
9
10
11
MapBuilderClass::BlockClass* IntersectBlocks[] = { 0x00000000 };
 
// бла-бла-бла
 
 
// в цикле:
if(какое-то сравнение)
{
    IntersectBlocks = (MapBuilderClass::BlockClass*)realloc(&IntersectBlocks, i*sizeof(MapBuilderClass::BlockClass*));
    IntersectBlocks[i] = new MapBuilderClass::BlockClass();
}
Добавлено через 2 минуты
пишет: невозможно преобразовать "MapBuilderClass::BlockClass *" в "MapBuilderClass::BlockClass *[1]"
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.11.2012, 00:35
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Динамический массив указателей (C++):

Динамический массив указателей - C++
Нужен массив указателей на тип родительского класса Game, как его правильно оформить? То что я написал выдает ошибку. #include...

Динамический массив указателей - C++
есть вот такой массив. void* pppribarray = { NULL, NULL, NULL, NULL }; каждый его элемент это указатель на разные пользовательские типы...

Динамический массив указателей - C++
Чегото не пойму такое вообще возможно? Странно, что при объявлении можно не указывать размерность: int *a; Но как потом память выделять...

Динамический массив с использованием указателей - C++
Дан двумерный массив целых чисел размером , где m и n – заданные натуральные числа. Если в массиве есть такие две строки, что все элементы...

Динамический массив указателей на объекты - C++
вообщем была тут на форуме задача, в подробности вдаваться не буду, смысл сейчас заключается в том, чтобы создавать в цикле объекты, и в их...

Создать динамический массив указателей - C++
Создать динамический массив указателей для сохранения двумерного массива А в динамической памяти. Составить программу для подсчета...

8
I.M.
566 / 549 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
30.11.2012, 00:37 #2
std::vector
0
sooqua
15 / 9 / 0
Регистрация: 23.02.2012
Сообщений: 135
30.11.2012, 00:38  [ТС] #3
Цитата Сообщение от I.M. Посмотреть сообщение
std::vector
С радостью, но не подходит. Надо создать обычный массив.
0
I.M.
566 / 549 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
30.11.2012, 00:39 #4
Почему не подходит? в самый раз. Почему нужен именно обычный массив?
0
sooqua
15 / 9 / 0
Регистрация: 23.02.2012
Сообщений: 135
30.11.2012, 00:41  [ТС] #5
Цитата Сообщение от I.M. Посмотреть сообщение
Почему не подходит? в самый раз. Почему нужен именно обычный массив?
Потому что функция должна возвращать именно массив указателей на блоки, не хочется извращений))
0
I.M.
566 / 549 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
30.11.2012, 00:43 #6
Я так понимаю, то, что функция должна делать, прописываете вы сами. Так что мешает вернуть вектор?
0
sooqua
15 / 9 / 0
Регистрация: 23.02.2012
Сообщений: 135
30.11.2012, 00:51  [ТС] #7
Цитата Сообщение от I.M. Посмотреть сообщение
Я так понимаю, то, что функция должна делать, прописываете вы сами. Так что мешает вернуть вектор?
Функция должна возвращать не std::vector<MapBuilderClass::BlockClass*> а MapBuilderClass::BlockClass**. Да и просто хочется посмотреть на "ровное" решение

Добавлено через 4 минуты
Ну же профи, помогите :3
папа щас wi-fi отключит
0
Kuzia domovenok
2128 / 1956 / 195
Регистрация: 25.03.2012
Сообщений: 6,808
Записей в блоге: 1
30.11.2012, 01:01 #8
Цитата Сообщение от sooqua Посмотреть сообщение
Функция должна возвращать не std::vector<MapBuilderClass::BlockClass*> а MapBuilderClass::BlockClass**
То есть ты сам знаешь, что тебе нужно вернуть BlockClass**, но упорно заводишь массив BlockClass *[]
1
sooqua
15 / 9 / 0
Регистрация: 23.02.2012
Сообщений: 135
30.11.2012, 01:07  [ТС] #9
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
То есть ты сам знаешь, что тебе нужно вернуть BlockClass**, но упорно заводишь массив BlockClass *[]
А в чём разница?

Добавлено через 4 минуты
усмирили.. буду вектор юзать всем спасибо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2012, 01:07
Привет! Вот еще темы с ответами:

Динамический массив указателей на структуру - C++
Не могу понять как выделить место под динамический массив указателей на структуру с помощью new. Все верно делаю? int lol = 1024; ...

Создайте динамический массив указателей на структуры - C++
Задача: дана структура struct Sample { char c; double x; int *p; }; Создайте динамический массив указателей на...

Как сделать динамический массив из указателей? - C++
Всем привет! Как сделать динамический массив я знаю,и как сделать массив из указателей я знаю,а как сделать динамический массив из...

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


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

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

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