Saya mendapat jenis masalah "Schroedinger's Cat" di sini - program saya (sebenarnya rangkaian pengujian untuk program saya, tapi tetap saja sebuah program) macet, tetapi hanya ketika dibangun dalam mode rilis, dan hanya ketika diluncurkan dari baris perintah . Melalui caveman debugging (mis., Pesan printf () yang buruk di semua tempat), saya telah menentukan metode pengujian di mana kode mengalami crash, meskipun sayangnya crash yang sebenarnya tampaknya terjadi di beberapa destruktor, karena jejak pesan terakhir yang saya lihat ada di perusak lain yang mengeksekusi dengan bersih.
Ketika saya mencoba menjalankan program ini di dalam Visual Studio, itu tidak macet. Hal yang sama berlaku saat meluncurkan dari WinDbg.exe. Kecelakaan hanya terjadi saat meluncurkan dari baris perintah. Ini terjadi di bawah Windows Vista, btw, dan sayangnya saya tidak memiliki akses ke mesin XP sekarang untuk mengujinya.
Akan sangat baik jika saya bisa mendapatkan Windows untuk mencetak jejak tumpukan, atau sesuatu selain hanya menghentikan program seolah-olah telah keluar dengan bersih. Adakah yang punya saran tentang bagaimana saya bisa mendapatkan informasi yang lebih bermakna di sini dan semoga memperbaiki bug ini?
Sunting: Masalahnya memang disebabkan oleh larik di luar batas, yang saya jelaskan lebih lanjut di posting ini . Terima kasih semuanya atas bantuan Anda dalam menemukan masalah ini!