Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Управление памятью в С++

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Feniksa



Зарегистрирован: 28.08.2005
Сообщения: 122
Откуда: Чернобыль

СообщениеДобавлено: Сб Июн 03 2006 18:00    Заголовок сообщения: Управление памятью в С++ Ответить с цитатой

Управление памятью в С++
Ребята, подскажите, как мне решить данную проблему...

проблема.. Smile

Есть такой кусок кода:
int SomeFunction(void)
{
int *MassPtr;

MassPtr = new int[25];

//Some work
// Надо выделить больше места Smile
// Надо удалить выделенное место Smile

delete[] MassPtr;
return 1;
}

Но загвостка вот в чём. Дело в том, что в проге мне надо динамически
расширять мой массив. Тоесть мне нужно, что бы в некий момент времени
мой массив из 25 ячеек стал масивом из 26 ячеек. А потом удалить.

Связана эта проблема с тем, что есть некий массив данных и в зависимости от того,
как поведёт себя пользоватль, такое количество ячеек массива и будет.

Просто мне нужно расширять свой массив (все другие варианты пробовал, фигня получаеться,
приложение работает в реальном времени и очень чуствительно к времени выполнения
алгоритма).

Дело в том, что я нашёл у Страуструпа решение этой проблемы.
Там он использовал итераторы. Но что то я почитал и понял, что итераторы мне
не позубам Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Kefir



Зарегистрирован: 16.04.2005
Сообщения: 443
Откуда: Пермь

СообщениеДобавлено: Сб Июн 03 2006 23:41    Заголовок сообщения: Re: Управление памятью в С++ Ответить с цитатой

Feniksa писал(а):

Дело в том, что я нашёл у Страуструпа решение этой проблемы.
Там он использовал итераторы. Но что то я почитал и понял, что итераторы мне
не позубам Smile

Очень зря Вы так поняли, если не использовать стандартные средства, то Вам придется самому их создавать, а это:
1. Дольше (дороже)
2. Менее надежно
Лучше потратить полчаса и перечитать нужную главу.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Feniksa



Зарегистрирован: 28.08.2005
Сообщения: 122
Откуда: Чернобыль

СообщениеДобавлено: Пн Июн 05 2006 17:02    Заголовок сообщения: Ответить с цитатой

Ребята, у меня вот какой вопрос ещё появился. В играх (так как у меня игровое приложение) используеться статический массив обэктов (тоесть мы заранее указываем, что пехотинцев может быть не более 300) Smile или всё жеш технология "создание нужного обьэкта в нужный момент" Confused
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Kefir



Зарегистрирован: 16.04.2005
Сообщения: 443
Откуда: Пермь

СообщениеДобавлено: Пн Июн 05 2006 18:25    Заголовок сообщения: Ответить с цитатой

Эт как сказать. Если нужно быстродействие то как правило используются статические массивы, но тут возникает масса проблем, надо обрабатывать случаи возможного появления лишних объектов, т.е. запрещать их. Что касается динамических множеств, то они гибче, но медленнее. И возникают ошибки переполнения всего на свете. Короче так если скорость критична используем статический массив, если нет динамический, лучьше строить приложение так чтобы можно было легко поменять статический массив на список, например, и наоборот. Там где это критично.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Feniksa



Зарегистрирован: 28.08.2005
Сообщения: 122
Откуда: Чернобыль

СообщениеДобавлено: Вт Июн 06 2006 10:23    Заголовок сообщения: Ответить с цитатой

Понял Smile . Значит буду смотреть в завсисимости от ситуации использовать тот или иной способ. Rolling Eyes
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...