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

Аллокатор памяти общего назначения - C++

Войти
Регистрация
Восстановить пароль
 
podhornyi96
0 / 0 / 0
Регистрация: 11.10.2013
Сообщений: 14
18.09.2014, 15:27     Аллокатор памяти общего назначения #1
Добрый день! В ВУЗе задали написать аллокатор памяти общего назначения на С++, но у меня нет ни единого представления как это можно сделать, так как знаний по С++ не очень много, и вообще у меня нет представления о том как это должно выглядеть. Программа должна содержать 3 функции

• void *mem_alloc(size_t size);

функция должна выделить блок памяти заданного размера в size байт. Если блок памяти был выделен успешно, то вернуть адрес начала этого блока, в противном случае вернуть NULL.

• void *mem_realloc(void *addr, size_t size);

функция должна изменить размер блока памяти с адресом addr до size байт. При этом содержимое (всё или часть) старого блока памяти может быть перенесено в другой блок памяти. Если удалось изменить размер бло-ка памяти, то функция должна вернуть адрес нового блока памяти, иначе вернуть NULL и не разрушить старый блок памяти. Если addr равен NULL, то вызов функции аналогичен вызову mem_alloc(size).

• void mem_free(void *addr);

функция должна освободить прежде выделенный блок памяти.

Я не могу понять, нужно переопределить уже существующие функции realloc, free, alloc, то есть написать свою реализацию этих функций, или написать аллокатор с использованием этих функций? Пожалуйста, постарайтесь объяснить на пальцах что это такое и какую литературу почитать.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.09.2014, 15:27     Аллокатор памяти общего назначения
Посмотрите здесь:

Команды Borland C++ по разделам их назначения C++
Составить программу для нахождения наибольшего и наименьшего общего делителя и наименьшего общего кратного двух натуральных чисел C++
Задача с собеседования (аллокатор памяти) C++
C++ Схема алгоритма и описание назначения переменных
почему то не переводит на другую строку cout << "введенный пункт назначения:" << a[i].pn << ' ' ; cout << "введенный пункт назначения:" << a[i].num C++
Аллокатор в chrome C++
C++ WinAPI Изменить назначения клавиш
C++ Пишем аллокатор
Как написать пуловый аллокатор для работы с объектами C++
C++ Быстрый аллокатор
C++ Нахождение наибольшего общего делителя и наименьшего общего кратного двух натуральных
Составить программу назначения стипендии C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
worldown
38 / 38 / 18
Регистрация: 22.06.2009
Сообщений: 145
18.09.2014, 16:03     Аллокатор памяти общего назначения #2
а если через new, delete ?
NEET
0 / 0 / 0
Регистрация: 18.11.2013
Сообщений: 1
02.10.2014, 12:40     Аллокатор памяти общего назначения #3
podhornyi96, hi
Yandex
Объявления
02.10.2014, 12:40     Аллокатор памяти общего назначения
Ответ Создать тему
Опции темы

Текущее время: 18:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru