$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Joe Gottman (jgottman_at_[hidden])
Date: 2007-05-22 20:21:49
Jeffrey Faust wrote:
> My only complaint about boost::optional is that it is very difficult to
> see values in the debugger. I brought this up in a discussion at
> BoostCon, and Jeff Garland suggested I submit a patch.
>
> Well, I have a patch. The change introduces a new private T* m_value
> and protected method update_debug() which sets this variable. The
> variable is only visible when building debug, and the method is empty in
> non-debug. From there, I simply call update_debug() in each public
> method that changes the storage.
>
> The final result is that debuggers can see the variable data by looking
> at opt.m_value. When not set, the value is null.
>
> Any thoughts?
If I want to see the result of an optional, I often write code that
looks like the following:
optional<int> opt;
/// Time passes...
if (opt) {
const int &i = *opt;
Then I can just watch i. I do the same thing with iterators, especially
into sets and maps.
Joe Gottman