I recently rebuilt a C++ project to use the DLL version of the CRT and discovered that the _crtBreakAlloc variable was not visible to the Visual C++ debugger. If you don't already know, this variable is maintained by the debug CRT heap allocation code and can be used to track memory leaks, as discussed in this KnowledgeBase article.

The article also gave me a clue as to why this technique wasn't available - I need to use the code context feature when typing the debugger expression in the Watch window:

{function,module,dll}expression

Unfortunately, the KB article suggestion doesn't work for VC 7.1 (I don't know if it works for earlier versions). For Visual C++ 7.1, the following watch expression does work when linking with the DLL version of the CRT:

{,,msvcr71d.dll}_crtBreakAlloc