Это продолжение моего последнего вопроса: Полный сбой системы на C ++, только в режиме выпуска
В основном у меня есть древовидная структура данных, которая в режиме Release полностью зависаетОС.Это происходит из-за внезапного скачка в распределении памяти, который выходит за рамки возможностей ОС.
Эта кажущаяся утечка памяти (которая есть, но об этом через минуту) очень странная, потому что у меня есть всенеобходимый код для инициализации указателей в NULL и в конечном итоге для их выделения (при необходимости), если они окажутся равными NULL.В режиме отладки это правильное поведение подтверждается, и все распределяется нормально (я вижу, что указатели NULL установлены в ноль от отладчика).
Но в режиме выпуска все по-другому.Конструкторы полностью пропускаются, и все внутренние компоненты класса инициализируются случайным мусором.Это также приводит к тому, что указатели становятся бесполезными, и именно здесь выделяется память до тех пор, пока вся система не выйдет из строя.
Почему режим Release игнорирует мои конструкторы?
Я использую Visual Studio 2010 наКстати, Windows 7