Matt,
>> however, I'm at a loss regarding how to track these things down. <<
There are serveral things you can do.
1. Make sure you delete any pointers when you are finished with them. 2. Try
like the devil not to use any global pointers.
3. Make full use of whatever debugging factilities provided with your
compiler, i.e., "assert()", liberal sprinkling of debugging precompiler
macros to examin intermediate values, and use of "try" and "catch" blocks
around all I/O and memory management routines.
4. Step through the code one line at a time with your debugger so you can
identify exactly where the program is blowing up. This fourth step is best
accomplished by using whatever input you know blows the program up early,
and it would be best to use several different short time blow-ups to ensure
the problem is happening at the same place.
Good luck!
Bob
|