Friday, December 31, 2004

On debugging STL with VS.NET 2003 debugger

From: "Oleg Starodumov"
Subject: Re: debugging with STL
Newsgroups: microsoft.public.vc.debugger

> how do I use VS C++ .NET 2003 debugger to view the data in a STL
> container, such as vector and list?
> If I just type the name of a vector into the Watch window, all I see is some
> beginning and ending memory address.
>

There is no direct support for STL containers in Watch window.
Instead you have to work with the members of the corresponding
container types.

For a vector, you can start with these examples:

"v._Myfirst" -> the first element
"v._Myfirst, 10" -> 10 elements
"v._Myfirst[1]" -> the element at index 1
"v.size()" -> number of elements

For a list:

"l._Mysize" -> number of elements
"l._Myhead->_Next->_Myval" -> the first element
"l._Myhead->_Next->_Next->_Myval" -> the second element
"l._Myhead->_Next->_Next->_Next->_Myval" -> the third element, etc.

Regards,
Oleg