The Microsoft Foundation Class Library contains many diagnostic features to help debug your program during development. These features, especially keeping track of all memory allocations, will slow your program down. Others, such as assertion testing, will cause your program to halt when erroneous conditions are encountered.
In a commercial retail product, slow performance and program interruption are clearly unacceptable. For this reason, the Microsoft Foundation Class Library provides a way to turn the debugging and diagnostic features on or off when building your program. You typically build a debug version of your program and link with the Debug version of the Microsoft Foundation Class Library while developing your program. When it comes time to release your program, you build a release version and link with the Release Foundation libraries.