7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 272

Нужен материал для статьи про управление памятью в С++

05.02.2015, 12:22. Показов 2351. Ответов 43
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день всем, хотел бы написать статью. О управлении памятью С++. Скорее всего речь пойдет о оператов new и delete.
Скажите пожалуйста откуда можно взять такой богатый материал?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.02.2015, 12:22
Ответы с готовыми решениями:

Нужен материал для начинающих
Хочу научиться программировать... Какие программы сейчас более актуальны и с чего начать что бы научится правильно с ними работать?

Реализовать алгоритм работы планировщика. Управление виртуальной памятью. Управление файловой системой
Разработка программы менеджера памяти. Свопинг. Сегментная схема организации памяти. Управление виртуальной памятью. Глобальное и локальное...

Собираю материал для статьи о привычках крутых разработчиков
Поделитесь плиз опытом с начинающим IT-редактором. В инетовских статьях пишут в целом об одном и том же: - Я все время учусь новому ...

43
Неэпический
 Аватар для Croessmah
18128 / 10712 / 2063
Регистрация: 27.09.2012
Сообщений: 27,001
Записей в блоге: 1
05.02.2015, 12:24
Из Стандарта!!!
А Вы уверены, что нужно писать эту статью? А то ведь может большая куча(не память) получиться.
Уверены, что обладаете достаточным количеством знаний и опыта, чтобы было чем поделиться с другими? Или это опять из разряда "Вчера узнал про new, а сегодня учу других"?
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
05.02.2015, 12:25
Цитата Сообщение от yyyuuu Посмотреть сообщение
Скажите пожалуйста откуда можно взять такой богатый материал?
По поводу правописания для статьи: из учебника по русскому языку.
По поводу управления памятью: из любой книжки для новичков.
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
05.02.2015, 12:25
кому нужна статья от человека, который даже не знает, где взять материал для написания статьи?
0
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 272
05.02.2015, 12:27  [ТС]
Кому нужна, это другой вопрос.
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
05.02.2015, 12:30
ну ладно. какой вопрос, такой и ответ:
вот тут есть ссылки на материал: Литература C++
0
Неэпический
 Аватар для Croessmah
18128 / 10712 / 2063
Регистрация: 27.09.2012
Сообщений: 27,001
Записей в блоге: 1
05.02.2015, 12:31
Кому нужна, это другой вопрос
Да нет, не другой. Потому что, если получится кал, то потом те, кто будет по нему учиться придут сюда с тупыми вопросами и ответами, потому что в статье "так написано".
1
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
05.02.2015, 12:32
Цитата Сообщение от yyyuuu Посмотреть сообщение
Добрый день всем, хотел бы написать статью. О управлении памятью С++. Скорее всего речь пойдет о оператов new и delete.
Скажите пожалуйста откуда можно взять такой богатый материал?
Собрался писать языкастую статью и даже не знаешь языка? Однако!
0
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 272
05.02.2015, 12:35  [ТС]
По этому я хочу собрать по больше материала, что бы не получился кал!
Может кто что подскажет, или даст материал тот и которого стоит взять что. А не пишу сюда по причине той что найти не могу
0
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
05.02.2015, 12:41
Подскажу общее направление. Статью надо назвать в духе "Управление памятью: почему не надо этого делать" и в тексте объяснять, что идеалом, к которому следует всячески стремиться, будет написание программы, в которой нет ни одного new и delete.
0
Неэпический
 Аватар для Croessmah
18128 / 10712 / 2063
Регистрация: 27.09.2012
Сообщений: 27,001
Записей в блоге: 1
05.02.2015, 12:43
yyyuuu, открываете стандарт языка, читаете все что можно о "storage duration" и сопутствующих темах. Потом читаете о распространенных подходах в этом вопросе(например о распределителях памяти, RAII). Осваиваетесь во всём этом, учитесь применять, модифицируете, советуетесь с другими, потом уже может и пишите свою статью.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
05.02.2015, 12:44
Цитата Сообщение от Nick Alte Посмотреть сообщение
Подскажу общее направление. Статью надо назвать в духе "Управление памятью: почему не надо этого делать" и в тексте объяснять, что идеалом, к которому следует всячески стремиться, будет написание программы, в которой нет ни одного new и delete.
Бред. Ни в одной реальной задаче ни когда заранее не известно количество необходимых данных, а вот резервирование массивов как раз устарело уже при создании бейсика.
0
2 / 2 / 1
Регистрация: 03.02.2015
Сообщений: 23
05.02.2015, 12:48
Цитата Сообщение от yyyuuu Посмотреть сообщение
Добрый день всем, хотел бы написать статью. О управлении памятью С++. Скорее всего речь пойдет о оператов new и delete.
Скажите пожалуйста откуда можно взять такой богатый материал?
Предлагаю вообще не писать статью на эту тему или любую другую связанную с C++ и вообще с программированием.
Быбери тему , о кошечках на пример, и морочь голову на форуме кошатников
0
Неэпический
 Аватар для Croessmah
18128 / 10712 / 2063
Регистрация: 27.09.2012
Сообщений: 27,001
Записей в блоге: 1
05.02.2015, 12:48
taras atavin, имеется ввиду абстрагирование от явного использования кучи. Неизвестно кол-во элементов заранее? Берем вектор, а не =new type[size].
В этом идея, а не в отказе от динамической памяти.
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
05.02.2015, 12:50
Цитата Сообщение от Nick Alte Посмотреть сообщение
Подскажу общее направление. Статью надо назвать в духе "Управление памятью: почему не надо этого делать" и в тексте объяснять, что идеалом, к которому следует всячески стремиться, будет написание программы, в которой нет ни одного new и delete.
Точно подмечено.

Цитата Сообщение от taras atavin Посмотреть сообщение
Бред. Ни в одной реальной задаче ни когда заранее не известно количество необходимых данных, а вот резервирование массивов как раз устарело уже при создании бейсика.
Ваши рассуждения наивны по меньшей мере.

Так, на всякий случай: для того, что бы пользоваться std::vector,
в ручную дергать new не нужно.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
05.02.2015, 12:57
Цитата Сообщение от Nick Alte Посмотреть сообщение
Подскажу общее направление. Статью надо назвать в духе "Управление памятью: почему не надо этого делать" и в тексте объяснять, что идеалом, к которому следует всячески стремиться, будет написание программы, в которой нет ни одного new и delete.
Ещё бредовее. А с какого перепугу ты взял, что разработчики стандартных контейнеров лучше прикладных программистов знают, какое именно поведение контейнеров требуется. Ну ладно ещё строки, они действительно у всех одинаковы. А остальные страдают тем, что даже если их разработчики угадали потребности прикладников, они могут устареть. И всё равно в них упираться? Если проге нужен свой контейнер, но её разработчик упёрся в стандартные, то она устарела до начала своей разработки. И место ей только в корзине.

Добавлено через 29 секунд
Цитата Сообщение от hoggy Посмотреть сообщение
Точно подмечено.
Вообще то толсто.

Добавлено через 29 секунд
Цитата Сообщение от hoggy Посмотреть сообщение
Ваши рассуждения наивны по меньшей мере.
А ничего, что они основаны на опыте реальной работы?
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
05.02.2015, 13:01
Цитата Сообщение от Croessmah Посмотреть сообщение
taras atavin, имеется ввиду абстрагирование от явного использования кучи. Неизвестно кол-во элементов заранее? Берем вектор, а не =new type[size].
C++
1
2
3
4
5
6
struct my_abstract_class
{
public:
    virtual void method()=0;
};
std::vector<my_abstract_class>test;
И опаньки...
Цитата Сообщение от yyyuuu Посмотреть сообщение
Добрый день всем, хотел бы написать статью. О управлении памятью С++. Скорее всего речь пойдет о оператов new и delete.
Скажите пожалуйста откуда можно взять такой богатый материал?
Нагуглить готовое и отрерайтить.
0
Неэпический
 Аватар для Croessmah
18128 / 10712 / 2063
Регистрация: 27.09.2012
Сообщений: 27,001
Записей в блоге: 1
05.02.2015, 13:07
Renji, не страдайте фигней, вектор хранит объекты, а объекты абстрактного класса нельзя создать. В этом случае new abstract_class [100] тоже не прокатит так то ))) нужны указатели на объекты.
Ах, да, std::vector<std::shared_ptr<my_abstract_ class>>.
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
05.02.2015, 13:15
Цитата Сообщение от Croessmah Посмотреть сообщение
Renji, не страдайте фигней, вектор хранит объекты, а объекты абстрактного класса нельзя создать. В этом случае new abstract_class [100] тоже не прокатит так то ))) нужны указатели на объекты.
А чтобы получить эти указатели нужен new. Или std::shared_ptr уже научился самозаполняться?
0
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
05.02.2015, 13:19
Цитата Сообщение от taras atavin Посмотреть сообщение
Бред.
Цитата Сообщение от taras atavin Посмотреть сообщение
Ещё бредовее.
Вы как-то чересчур поспешно берётесь выносить весьма категоричные суждения, не разобравшись в вопросе.

Цитата Сообщение от taras atavin Посмотреть сообщение
А с какого перепугу ты взял, что разработчики стандартных контейнеров лучше прикладных программистов знают, какое именно поведение контейнеров требуется.
А они что, инопланетяне? Или для разработки стандартных контейнеров в тайных подвалах зловещих засекреченных институтов синтезируют специальных генетически модифицированных разработчиков, не имеющих абсолютно ничего общего с прикладными программистами? Стандарты создаёт не комитет, включающий в себя самых опытных и знающих специалистов, а некая конгрегация эфирных существ, руководствующихся абсолютно чужеродными и непонятными мотивами?
Нет, контейнеры люди таки делают, исходя из простых практических соображений удобства и надёжности.

Цитата Сообщение от taras atavin Посмотреть сообщение
Если проге нужен свой контейнер, но её разработчик упёрся в стандартные, то она устарела до начала своей разработки.
Если программе действительно нужен свой контейнер, и именно управляющий памятью по своей специальной схеме - то да, действительно, придётся и управлять памятью, и new-delete вызывать и более извращённые вещи вытворять, вроде in-place new и явного вызова деструкторов.
Однако же если с детским задором бросаться разрабатывать свой контейнер на каждый чих, при этом искренне полагая себя во всём мудрее и опытнее разработчиков стандартных контейнеров, это станет источником как ненужных трудозатрат, так и несовместимости, уменьшенной читаемости кода и потенциальным источником дополнительных ошибок. Бесспорно, бывают программы, требующие разработки своих специфических контейнеров, но далеко не каждая.

Добавлено через 2 минуты
Цитата Сообщение от Renji Посмотреть сообщение
Или std::shared_ptr уже научился самозаполняться?
Заполнять shared_ptr через new как раз не рекомендуется. Я, между прочим, с самого начала намекал и на make_shared с его младшим братиком make_unique.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.02.2015, 13:19
Помогаю со студенческими работами здесь

Какой материал можно почитать для создании игр? Книгу, ссылку на статьи. В общем, с чего лучше начать?
Скажите пожалйста какой материал пожно почитать для создании игр. Книгу, ссылку на статьи. Вообщем с чего лучше начать.

Управление памятью для массивов
Наверное я был не туда написал или что... Помогите кто может,надо написать прогу Управление памятью для массивов или что то такое,через...

Нужен материал по языку для начинающего
Здрастувуйте помогите со справочниками по Паскалю.нужен материал по языку.начинаю с нуля.

Нужен материал для увеличения магнитных свойств
Здравствуйте Нужен материал для увеличения нигнитных свойств. Тоесть материал которы бы не проводил ток, но очень хорошо проводил...

Вывести Popup, который содержит в себе материал статьи
Добрый день! Столкнулся со сложностью: Главная страница сайта - плиточный дизайн, с выводом статей в случайном порядке. Кликая...


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

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

Новые блоги и статьи
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
Полностью асинхронный счётчик на логике (сумматорах) трёх состояний и асинхронных регистрах трёх состояний. Структура "электронный Buttom Up"
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
Цепочки методов в C# с Fluent API
UnmanagedCoder 24.04.2025
Современное программирование — это не только решение функциональных задач, но и создание кода, который удобно поддерживать, расширять и читать. Цепочки методов и Fluent-синтаксис в C# стали мощным. . .
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru