Механизм new/delete C++ или malloc/free C
От: Аноним  
Дата: 15.09.09 00:22
Оценка:
Такой вопрос: Если я пишу приложение, состоящее из нескольких библиотек, и одна из библиотек выделяет память функцией malloc, а хост приложение должно освободить эту память, возможно ли вызвать функцию free из хост-приложения, передав указатель, сообщенный dll-библиотекой?
Зависит ли ответ от используемого компилятора (gcc, VC)? А от того, использую ли я C или C++? Одинаковы ли функции new/delete и malloc/free в этом смысле? Кто занимается распределением и учетом памяти в gcc и Visual C++? (кажется, обе ОС — Windows и Linux — не позволяют вести учет используемой памяти достаточно подробно — там даже для освобождения запрошенной из кучи памяти нужно указывать объем того, что хотим освободить (если не ошибаюсь), и из-за этого компиляторы ухищряются вести собственную "базу данных" указателей и размеров выделенных областей).
Спасибо за ответы
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.