h wrote: > Thanks Mehturt. > > but, it works through g++ on Cygwin and GNU/Linux machine without > MS-VC++ 6.0 on win32 machine. > i know i've attached code are has a problem. > > okay, i wanna know exactly attached code are why looks working good in > g++ only. > that's it.
I cannot reproduce the exact behaviour. The app crashes at different places depending on optimization. If you compile with optimization and warnings turned on, then g++ will tell you something (g++ -O2 -Wall ...). If you want to know exactly what happens, you have to use a debugger to look what the values are initialized to. Or you have to insert some more output. But don't be surprised, if behaviour changes completely, when you do so. This is the very nature of undefined behaviour, it can be like a phantom. You have done a simple bug and it will bug you for weeks, randomly. This is why it is so nice that the compiler can warn you about missing initializations. I think it is prossible to create both kinds of apps with undefined behaviour on all platforms, non-crashing and crashing ones. The differences are subtle, and you have to dig deeply into the whole runtime system to understand. You need about the expertise a hacker uses to break into some application. There is no point in looking for the exact cause, that undefined behaviour does not result in a crash, just remove the bug and be happy, and remember next time you declare a pointer to initialize, and remember to turn warnings on next time you compile. Bernd Strieder _______________________________________________ help-gplusplus mailing list help-gplusplus@gnu.org http://lists.gnu.org/mailman/listinfo/help-gplusplus