...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Let's face it debugger multiprecision numbers is hard - simply because
we can't easily inspect the value of the numbers. Visual C++ provides a
partial solution in the shape of "visualizers" which provide
improved views of complex data structures, these visualizers need to be
added to the [Visualizer]
section of autoexp.dat
located in the Common7\Packages\Debugger
directory of your Visual Studio installation. The actual visualizer code
is in the sandbox here
- just cut and paste the code into your autoexp.dat
file.
Note | |
---|---|
These visualizers have only been tested with VC10, also given the ability
of buggy visualizers to crash your Visual C++ debugger, make sure you
back up |
The first visualizer provides improved views of debug_adaptor
:
The next visualizer provides improved views of cpp_int: small numbers are displayed as actual values, while larger numbers are displayed as an array of hexadecimal parts, with the most significant part first.
Here's what it looks like for small values:
And for larger values:
There is also a ~raw
child member that lets you see the actual members of the class:
The visualizer for cpp_dec_float
shows the first few digits of the value in the preview field, and the full
array of digits when you expand the view. As before the ~raw
child gives you access to the actual
data members: