Thread debugging can be one of the more difficult debugging exercises for a Visual C++ developer. The Visual Studio 2008 debugger contains a number of improvements that make thread debugging more productive, enabling code issues in multi-threaded applications to be identified and remedied faster.
Articles Written by Nick Wienholt
Effective use of the Visual C++ debugger is one of the easiest ways to increase developer productivity. Program database (PDB) files are one of the key elements in effectively debugging an application, and it is easy to set up Visual Studio to use debug symbols for binary files produced by other developers, including those at Microsoft.
Code is run in a debugger for two main reasons: examining the branches of code that are being executed, and examining data values to determine why the code is behaving in a certain manner. Inspecting data values can be significantly improved by customizing the debug information. See how that can be done in the Visual C++ debugger.
The Visual C++ 2008 Feature Pack incorporates C++ language changes that move C++ closer to the upcoming C++0x standard. The new language elements build on the powerful features of the C++ language, and include support for regular expressions, function objects, and a number of new STL containers as well as many other new features. Review some of the new language features, and see how they can be incorporated into C++ applications.
Hot on the heels of the significant MFC updates that were delivered with the release of Visual Studio 2008, the Visual C++ 2008 Feature Pack significantly boosts the ability of MFC to deliver modern-looking user interfaces that will be familiar to Windows and Office users. Look at these new controls and see how MFC developers can significantly improve their application's look and feel.
For large and complex applications, dealing with the amount of data collected can be difficult. See how the Visual Studio Team System (VSTS) Developer Edition Profiler can do an excellent job of finding performance problems by simply pointing it at an application and allowing it to collect data.