У меня здесь проблема типа «Кот Шредингера» - моя программа (на самом деле набор тестов для моей программы, но, тем не менее, программа) дает сбой, но только при сборке в режиме выпуска и только при запуске из командной строки . Посредством отладки пещерного человека (т.е. повсюду неприятных сообщений printf ()) я определил метод тестирования, при котором происходит сбой кода, хотя, к сожалению, фактический сбой, похоже, происходит в каком-то деструкторе, поскольку последние сообщения трассировки, которые я вижу, находятся в другие деструкторы, которые выполняются чисто.
Когда я пытаюсь запустить эту программу внутри Visual Studio, она не дает сбоев. То же самое происходит при запуске из WinDbg.exe. Сбой происходит только при запуске из командной строки. Это происходит под Windows Vista, кстати, и, к сожалению, у меня сейчас нет доступа к машине XP для тестирования.
Было бы очень хорошо, если бы я мог заставить Windows распечатать трассировку стека или что-то еще, кроме простого завершения программы, как если бы она вышла без ошибок. Есть ли у кого-нибудь совет относительно того, как я могу получить здесь более значимую информацию и, надеюсь, исправить эту ошибку?
Изменить: проблема действительно была вызвана массивом вне границ, о котором я подробнее расскажу в этом сообщении . Спасибо всем за помощь в поиске этой проблемы!