Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Feniksa
Зарегистрирован: 28.08.2005 Сообщения: 122 Откуда: Чернобыль
|
Добавлено: Сб Июн 03 2006 18:00 Заголовок сообщения: Управление памятью в С++ |
|
|
Управление памятью в С++
Ребята, подскажите, как мне решить данную проблему...
проблема..
Есть такой кусок кода:
int SomeFunction(void)
{
int *MassPtr;
MassPtr = new int[25];
//Some work
// Надо выделить больше места
// Надо удалить выделенное место
delete[] MassPtr;
return 1;
}
Но загвостка вот в чём. Дело в том, что в проге мне надо динамически
расширять мой массив. Тоесть мне нужно, что бы в некий момент времени
мой массив из 25 ячеек стал масивом из 26 ячеек. А потом удалить.
Связана эта проблема с тем, что есть некий массив данных и в зависимости от того,
как поведёт себя пользоватль, такое количество ячеек массива и будет.
Просто мне нужно расширять свой массив (все другие варианты пробовал, фигня получаеться,
приложение работает в реальном времени и очень чуствительно к времени выполнения
алгоритма).
Дело в том, что я нашёл у Страуструпа решение этой проблемы.
Там он использовал итераторы. Но что то я почитал и понял, что итераторы мне
не позубам |
|
Вернуться к началу |
|
|
Kefir
Зарегистрирован: 16.04.2005 Сообщения: 443 Откуда: Пермь
|
Добавлено: Сб Июн 03 2006 23:41 Заголовок сообщения: Re: Управление памятью в С++ |
|
|
Feniksa писал(а): |
Дело в том, что я нашёл у Страуструпа решение этой проблемы.
Там он использовал итераторы. Но что то я почитал и понял, что итераторы мне
не позубам |
Очень зря Вы так поняли, если не использовать стандартные средства, то Вам придется самому их создавать, а это:
1. Дольше (дороже)
2. Менее надежно
Лучше потратить полчаса и перечитать нужную главу. |
|
Вернуться к началу |
|
|
Feniksa
Зарегистрирован: 28.08.2005 Сообщения: 122 Откуда: Чернобыль
|
Добавлено: Пн Июн 05 2006 17:02 Заголовок сообщения: |
|
|
Ребята, у меня вот какой вопрос ещё появился. В играх (так как у меня игровое приложение) используеться статический массив обэктов (тоесть мы заранее указываем, что пехотинцев может быть не более 300) или всё жеш технология "создание нужного обьэкта в нужный момент" |
|
Вернуться к началу |
|
|
Kefir
Зарегистрирован: 16.04.2005 Сообщения: 443 Откуда: Пермь
|
Добавлено: Пн Июн 05 2006 18:25 Заголовок сообщения: |
|
|
Эт как сказать. Если нужно быстродействие то как правило используются статические массивы, но тут возникает масса проблем, надо обрабатывать случаи возможного появления лишних объектов, т.е. запрещать их. Что касается динамических множеств, то они гибче, но медленнее. И возникают ошибки переполнения всего на свете. Короче так если скорость критична используем статический массив, если нет динамический, лучьше строить приложение так чтобы можно было легко поменять статический массив на список, например, и наоборот. Там где это критично. |
|
Вернуться к началу |
|
|
Feniksa
Зарегистрирован: 28.08.2005 Сообщения: 122 Откуда: Чернобыль
|
Добавлено: Вт Июн 06 2006 10:23 Заголовок сообщения: |
|
|
Понял . Значит буду смотреть в завсисимости от ситуации использовать тот или иной способ. |
|
Вернуться к началу |
|
|
|