This assert can be turned off. The possibilities are endless. Assert boxes could give all kinds of debugging information, if you take the time to write it. John Robbins describes a superassert in the February 99 issue of MSJ magazine. Compile time asserts Most people aren't as familiar with compile time asserts.
Compile time asserts evaluate a constant expression to make sure it is valid.
If the expression is invalid, the module won't compile. This might be useful if, say, you had a structure that you wanted to assure was a certain size when compiled. Well, compile time asserts operation on the principle of a construct that is either valid or invalid depending on the Boolean truth of an expression. I originally wanted to cover some thoughts on optimization as well as memory leak tracking. I'm still researching some of the material I wanted to discuss, and we are getting a bit long today, so we'll wrap it up.