[VC6] STL'у ненравится _ATL_MIN_CRT.
От: ZAMUNDA Земля для жалоб и предложений
Дата: 24.06.08 14:34
Оценка:
Проект COM-dll, в debug собирается, в release min size не собирается. MSDN сказал что где-то вызываю функцию требующую CRT. Эксперименты показали, что дело в STL (пользуюсь list'ом и несколькими функциями из algorithm).

Пока я просто убрал _ATL_MIN_CRT. А есть какие-нить способы заставить STL без CRT-фунций?

PS: Вообще, для меня это как-то странно -- где там CRT нужны??? Ну мож в std::string, ну дык я его и не использую.
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
Re: [VC6] STL'у ненравится _ATL_MIN_CRT.
От: Sergey Россия  
Дата: 24.06.08 14:43
Оценка: +1
ZAMUNDA пишет:

> Проект COM-dll, в debug собирается, в release min size не собирается.

> MSDN сказал что где-то вызываю функцию требующую CRT. Эксперименты
> показали, что дело в STL (пользуюсь list'ом и несколькими функциями из
> algorithm).
>
> Пока я просто убрал _ATL_MIN_CRT. А есть какие-нить способы заставить
> STL без CRT-фунций?

Чтоб целиком — точно нет. Пару функций из algorithm — скорее всего
можно. list — скорее нет чем да, там наверняка исключения используются.

> PS: Вообще, для меня это как-то странно -- где там CRT нужны??? Ну мож в

> std::string, ну дык я его и не использую.

new/delete, исключения.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re: [VC6] STL'у ненравится _ATL_MIN_CRT.
От: Tilir Россия http://tilir.livejournal.com
Дата: 24.06.08 15:03
Оценка:
Здравствуйте, ZAMUNDA, Вы писали:

ZAM>Проект COM-dll, в debug собирается, в release min size не собирается. MSDN сказал что где-то вызываю функцию требующую CRT. Эксперименты показали, что дело в STL (пользуюсь list'ом и несколькими функциями из algorithm).


ZAM>Пока я просто убрал _ATL_MIN_CRT. А есть какие-нить способы заставить STL без CRT-фунций?


ZAM>PS: Вообще, для меня это как-то странно -- где там CRT нужны??? Ну мож в std::string, ну дык я его и не использую.


Попробуйте определить

#undef _STD_USING
#undef _GLOBAL_USING


перед включением хидеров STL. Это успокоит компайлер, но может рухнуть рантайм, дальше смотрите что там реально нужно. Я в своём проекте (CRT по ряду причин нельзя), vector и list после некоторого траха вроде бы заюзал... но потом всё равно плюнул и сделал без них в C-стиле, получилось гораздо лучше
Re: [VC6] STL'у ненравится _ATL_MIN_CRT.
От: degor Россия  
Дата: 25.06.08 13:08
Оценка:
Здравствуйте, ZAMUNDA, Вы писали:

ZAM>Пока я просто убрал _ATL_MIN_CRT. А есть какие-нить способы заставить STL без CRT-фунций?

написал бы, что именно требуется и где, было бы проще советовать.

stl патчил файлами с dinkumware.com?
Re: [VC6] STL'у ненравится _ATL_MIN_CRT.
От: lollipop  
Дата: 25.06.08 21:19
Оценка:
Здравствуйте, ZAMUNDA, Вы писали:

ZAM>Проект COM-dll, в debug собирается, в release min size не собирается. MSDN сказал что где-то вызываю функцию требующую CRT. Эксперименты показали, что дело в STL (пользуюсь list'ом и несколькими функциями из algorithm).


Была такая же трабла рещил что — Самый надёжный способ заменить коллекции на аналогичные (наверняка вкурсе тот же CList<>) ATL ные. Но ты наверняка их в алгоритмах используешь. Мне пришлось слегка перешаблонить алгоритмы под себя. работает норм.

P.S.
new\delete — Как и писали выше это юзают.
Так же статические и глобальные объекты C++ (но это до 8 версии ATL) некорректно удалялись.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.