Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, Onorin, Вы писали:
O>>В двух словах, сейчас просто времени не так много на объяснение — такая проблема может проявиться если линковать Run-time статически и память в одном месте выделили, а освободить пытаемся в другом. Вот тут то мы и встаем на эти грабли.
К>shared_ptr всегда удаляет с помощью родного менеджера памяти.
Он "запоминает" deleter для объекта, на который хранит указатель. А вот объект (наследник sp_counted_base), который содержит счетчик ссылок (и deleter) может быть удален "в другой" куче. + shared_ptr можно настроить так, что для выделения памяти под этот объект будет использоваться не стандартный аллокатор, а другой — оптимизированный (BOOST_SP_USE_QUICK_ALLOCATOR).