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

Вопрос о динамическом выделении памяти - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шаблон для односвязного списка http://www.cyberforum.ru/cpp-beginners/thread119044.html
Доброго времени суток! Проблема - пишу шаблон для односвязного списка На приведенном фрагменте дает ошибку - " 45 D:\C++\test.cpp expected constructor, destructor, or type conversion before '*' token " 45 D:\C++\test.cpp expected `;' before '*' token Может кто подскажет в чем дело? #include <conio.h> #include <string.h> #include <iostream>
C++ Простое диалоговое окошко main.h: #define IDC_STATIC 100 BOOL CALLBACK DlgProc(HWND, UINT, WPARAM, LPARAM); void DlgOnCommand(HWND, int, HWND, UINT); BOOL DlgOnInitDialog(HWND, HWND, LPARAM); main.cpp: http://www.cyberforum.ru/cpp-beginners/thread119042.html
Что-то с типами C++
DialogBox(hInst, "Dialogs", NULL, DlgProc); Выдает: error C2664: DialogBoxParamW: невозможно преобразовать параметр 2 из 'const char ' в 'LPCWSTR' В чем проблема?
шаблоны функции C++
помогите решить Описать шаблон функции, меняющей местами значения двух переданных в нее параметров.
C++ Найти в матрице первую строку http://www.cyberforum.ru/cpp-beginners/thread118980.html
Найти в матрице первую строку, все элементы которой положительны.
C++ среднее арифметическое неотрицательных элементов матрицы Найти среднее арифметическое неотрицательных элементов матрицы, а также подсчитать, сколько таких элементов в каждой отдельно взятой строке матрицы. подробнее

Показать сообщение отдельно
accept
4819 / 3239 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
20.04.2010, 09:40     Вопрос о динамическом выделении памяти
смысл delete в том, чтобы сделать память снова доступной для new

Добавлено через 12 минут
как в K&R2 написано про malloc() и free():
при первом вызове malloc() с помощью системного вызова, обращаясь к системе, запрашивает большой кусок памяти, отрезает от него часть и возвращает указатель на начало (оставшуюся часть добавляет в список свободной памяти), при последующих вызовах, она от этого же куска отрезает ещё часть и возвращает указатель на начало (оставшуюся часть добавляет в список свободной памяти); когда этого куска не хвататает, malloc() делает снова запрос к операционной системе, и добавляет ещё один большой кусок к первому куску (добавляет его в список свободной памяти)
free() возвращает отрезанный кусок в список свободных кусков (если нужно, склеивает соседние свободные узлы списка в один узел), malloc() потом может выбрать любой узел подходящего размера (разделит его, конечно, точно)
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru