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

realloc и вызов конструктора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что это за компонент? http://www.cyberforum.ru/cpp/thread300352.html
Всем привет. Кто ни будь, знает в какой библиотеке есть компоненты: TLight и TTrend ? Знакомы ли вообще такие названия кому ни будь?
C++ Visual C++ и Builder C++ сильно отличаются друг от друга? Доброго времени суток. У меня такой вопрос, Visual C++ и Builder C++ сильно отличаются друг от друга? Например если прога была написана в Visual, то будет ли она корректно работать в Builder? http://www.cyberforum.ru/cpp/thread300349.html
Комментарий в коде C++
как в С++ делать коментр?? в паскале так: { bla bla} а в С++ как???
Списки, динамическая память и указатели C++
Нужна помощь! Требуется написать функцию rearrangment( ), меняющую i-ю и j-ю строки текста. То бишь нужно создать однонаправленный список, в который заносится построчно текст какой-либо уже...
C++ Найти решение - на разные темы http://www.cyberforum.ru/cpp/thread298385.html
Доброго времени суток!!! Уважаемые форумчанины, требуется помощь в решении задач по С++. За 1,5 месяца не смог разобраться ни в одном компиляторе. У меня видимо руки не оттуда растут, или эти...
C++ После всякиго ли компилятора c++ будут гарантирвоано правильно исполняться код, соответствющий этим строкам? После всякиго ли компилятора c++ будут гарантирвоано правильно исполняться код, соответствующий этим: a=a; // Удвоение a*=a; // Возведение в квадрат строкам. 1. На сколько надёжно компилится... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
18030 / 6262 / 427
Регистрация: 30.03.2009
Сообщений: 17,205
Записей в блоге: 27
20.05.2011, 16:41
Цитата Сообщение от pito211 Посмотреть сообщение
когда size подходит к capacity я выделяю вдвоё больший кусок.
Это не есть хорошо, потому что чем больше памяти будешь выделять, тем больше будет вероятность того, что память жрётся неэффективно (да ещё и экспотенциально). Обычно делают так, что выделяют некий квант (например, 1024 элемента) и выделяют память квантами. Т.е. изначально 1024 элемента, после того, как исчерпали - увеличиваем на 1024 элемента.

Ещё более грамотным будет плавающее значение кванта в зависимости от размера структуры. Т.е.определить квант, например, в (4096 / sizoef элемента). В этом случае независимо от размера элемента у тебя память будет расходоваться кусками по 4096 байт (что составляет одну страницу памяти - система работает с такими же квантами). Но тут будут ньюансы: если размер элемента больше 4096 или когда 4096 нацело не делится. Тут надо более аккуратно работать, а потому такой вариант годится скорее для саморазвития, чем для сдачи задания (потому что чем сложнее реализация, тем больше можно наделать ошибок)
5
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru