Как я могу перегрузить новый оператор для выделения памяти из вторичного запоминающего устройства?

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

Как я могу это реализовать? Использование malloc() по умолчанию брало бы его из кучи... Наверняка должен быть другой способ!


person Sandeep    schedule 14.12.2009    source источник
comment
Ну как вы общаетесь с другим устройством? Предоставляет ли ваша платформа API для этого? C++ не имеет стандартного способа сделать это, он зависит от платформы.   -  person GManNickG    schedule 14.12.2009


Ответы (2)


Вам придется создать или адаптировать свой собственный диспетчер кучи и перегрузить new и delete, а также new[] и delete[]. Инициализируйте диспетчер кучи со специальной памятью.

person wallyk    schedule 14.12.2009

person    schedule
comment
Спасибо, Роджер. Не могли бы вы дать мне точную функцию для выполнения: allocate_from_some_other_source(size); - person Sandeep; 14.12.2009
comment
Нет, он не может. Если вы увидите мой комментарий, это полностью зависит от вашей платформы. C++ не говорит ни слова о машине, на которой он работает. - person GManNickG; 14.12.2009
comment
Эти функции выделения и освобождения — это место, где вы общаетесь со своим дополнительным устройством памяти. Именно то, что они будут, будет зависеть от того, что вы делаете. - person ; 14.12.2009