7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 219
|
|
1 | |
Нужен материал для статьи про управление памятью в С++05.02.2015, 12:22. Показов 2098. Ответов 43
Метки нет Все метки)
(
Добрый день всем, хотел бы написать статью. О управлении памятью С++. Скорее всего речь пойдет о оператов new и delete.
Скажите пожалуйста откуда можно взять такой богатый материал?
0
|
|
05.02.2015, 12:22 | |
Ответы с готовыми решениями:
43
Нужен материал для начинающих Реализовать алгоритм работы планировщика. Управление виртуальной памятью. Управление файловой системой Собираю материал для статьи о привычках крутых разработчиков
|
Неэпический
|
|
05.02.2015, 12:24 | 2 |
Из Стандарта!!!
А Вы уверены, что нужно писать эту статью? А то ведь может большая куча(не память) получиться. Уверены, что обладаете достаточным количеством знаний и опыта, чтобы было чем поделиться с другими? Или это опять из разряда "Вчера узнал про new, а сегодня учу других"?
0
|
![]() 8720 / 4300 / 958
Регистрация: 15.11.2014
Сообщений: 9,744
|
|
05.02.2015, 12:25 | 3 |
По поводу правописания для статьи: из учебника по русскому языку.
По поводу управления памятью: из любой книжки для новичков.
0
|
1499 / 1145 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
|
|
05.02.2015, 12:25 | 4 |
кому нужна статья от человека, который даже не знает, где взять материал для написания статьи?
0
|
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 219
|
|
05.02.2015, 12:27 [ТС] | 5 |
Кому нужна, это другой вопрос.
0
|
1499 / 1145 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
|
|
05.02.2015, 12:30 | 6 |
ну ладно. какой вопрос, такой и ответ:
вот тут есть ссылки на материал: Литература C++
0
|
4203 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
05.02.2015, 12:32 | 8 |
0
|
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 219
|
|
05.02.2015, 12:35 [ТС] | 9 |
По этому я хочу собрать по больше материала, что бы не получился кал!
Может кто что подскажет, или даст материал тот и которого стоит взять что. А не пишу сюда по причине той что найти не могу
0
|
![]() 1672 / 1044 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
05.02.2015, 12:41 | 10 |
Подскажу общее направление. Статью надо назвать в духе "Управление памятью: почему не надо этого делать" и в тексте объяснять, что идеалом, к которому следует всячески стремиться, будет написание программы, в которой нет ни одного new и delete.
0
|
Неэпический
|
|
05.02.2015, 12:43 | 11 |
yyyuuu, открываете стандарт языка, читаете все что можно о "storage duration" и сопутствующих темах. Потом читаете о распространенных подходах в этом вопросе(например о распределителях памяти, RAII). Осваиваетесь во всём этом, учитесь применять, модифицируете, советуетесь с другими, потом уже может и пишите свою статью.
0
|
4203 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
05.02.2015, 12:44 | 12 |
Бред. Ни в одной реальной задаче ни когда заранее не известно количество необходимых данных, а вот резервирование массивов как раз устарело уже при создании бейсика.
0
|
2 / 2 / 1
Регистрация: 03.02.2015
Сообщений: 23
|
|
05.02.2015, 12:48 | 13 |
Предлагаю вообще не писать статью на эту тему или любую другую связанную с C++ и вообще с программированием.
Быбери тему , о кошечках на пример, и морочь голову на форуме кошатников
0
|
Неэпический
|
|
05.02.2015, 12:48 | 14 |
taras atavin, имеется ввиду абстрагирование от явного использования кучи. Неизвестно кол-во элементов заранее? Берем вектор, а не =new type[size].
В этом идея, а не в отказе от динамической памяти.
0
|
![]() 8720 / 4300 / 958
Регистрация: 15.11.2014
Сообщений: 9,744
|
|
05.02.2015, 12:50 | 15 |
Точно подмечено.
Ваши рассуждения наивны по меньшей мере. Так, на всякий случай: для того, что бы пользоваться std::vector, в ручную дергать new не нужно.
0
|
4203 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
05.02.2015, 12:57 | 16 |
Ещё бредовее. А с какого перепугу ты взял, что разработчики стандартных контейнеров лучше прикладных программистов знают, какое именно поведение контейнеров требуется. Ну ладно ещё строки, они действительно у всех одинаковы. А остальные страдают тем, что даже если их разработчики угадали потребности прикладников, они могут устареть. И всё равно в них упираться? Если проге нужен свой контейнер, но её разработчик упёрся в стандартные, то она устарела до начала своей разработки. И место ей только в корзине.
Добавлено через 29 секунд Вообще то толсто. Добавлено через 29 секунд А ничего, что они основаны на опыте реальной работы?
0
|
2760 / 1914 / 569
Регистрация: 05.06.2014
Сообщений: 5,569
|
||||||
05.02.2015, 13:01 | 17 | |||||
Нагуглить готовое и отрерайтить.
0
|
Неэпический
|
|
05.02.2015, 13:07 | 18 |
Renji, не страдайте фигней, вектор хранит объекты, а объекты абстрактного класса нельзя создать. В этом случае new abstract_class [100] тоже не прокатит так то ))) нужны указатели на объекты.
Ах, да, std::vector<std::shared_ptr<my_abstract_class>>.
0
|
2760 / 1914 / 569
Регистрация: 05.06.2014
Сообщений: 5,569
|
|
05.02.2015, 13:15 | 19 |
А чтобы получить эти указатели нужен new. Или std::shared_ptr уже научился самозаполняться?
0
|
![]() 1672 / 1044 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
05.02.2015, 13:19 | 20 |
Вы как-то чересчур поспешно берётесь выносить весьма категоричные суждения, не разобравшись в вопросе.
А они что, инопланетяне? Или для разработки стандартных контейнеров в тайных подвалах зловещих засекреченных институтов синтезируют специальных генетически модифицированных разработчиков, не имеющих абсолютно ничего общего с прикладными программистами? Стандарты создаёт не комитет, включающий в себя самых опытных и знающих специалистов, а некая конгрегация эфирных существ, руководствующихся абсолютно чужеродными и непонятными мотивами? Нет, контейнеры люди таки делают, исходя из простых практических соображений удобства и надёжности. Если программе действительно нужен свой контейнер, и именно управляющий памятью по своей специальной схеме - то да, действительно, придётся и управлять памятью, и new-delete вызывать и более извращённые вещи вытворять, вроде in-place new и явного вызова деструкторов. Однако же если с детским задором бросаться разрабатывать свой контейнер на каждый чих, при этом искренне полагая себя во всём мудрее и опытнее разработчиков стандартных контейнеров, это станет источником как ненужных трудозатрат, так и несовместимости, уменьшенной читаемости кода и потенциальным источником дополнительных ошибок. Бесспорно, бывают программы, требующие разработки своих специфических контейнеров, но далеко не каждая. Добавлено через 2 минуты Заполнять shared_ptr через new как раз не рекомендуется. Я, между прочим, с самого начала намекал и на make_shared с его младшим братиком make_unique.
0
|
05.02.2015, 13:19 | |
Помогаю со студенческими работами здесь
20
Управление памятью для массивов Нужен материал по языку для начинающего Нужен материал для увеличения магнитных свойств Вывести Popup, который содержит в себе материал статьи Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |