Re: Shared_Ptr в библиотеке
От: 0xDEADBEEF Ниоткуда  
Дата: 07.04.11 17:37
Оценка:
Здравствуйте, Desniza, Вы писали:

D>По сути получается алоцировали объект в DLL а грохаем в EXE, что не правильно изначально.

D>В этом собственно и вопрос — как оно работает на самом деле (такая связка)
Это может работать (и работает) при соблюдении одного фундаментального условия: One Definition Rule (ODR) не нарушен.
То есть: и в ехе и в длл:
— использует общий operator new и delete
— одинаковае реализации конструкторов копирования и деструкторов классов используемых там и там.
— все остальное, что может повлиять на копируемость и удалаемость обьектов используемых и там и там тоже одинаково.

Добиться этого очень просто: и ехе и длл должны собираться с одними и теми же заголовочными файлами.
В противном случае возможно всякое. И это называется "Dll Hell"
__________
16.There is no cause so right that one cannot find a fool following it.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.