Boost logo

Boost :

From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2008-08-04 21:08:56


AMDG

Emil Dotchevski wrote:
> On Mon, Aug 4, 2008 at 4:35 PM, Steven Watanabe <watanabesj_at_[hidden]> wrote:
>
>> It does call operator= when both operands have the same type. Thanks.
>>
>
> Is it then true that even foo::operator= throws, in the code below:
>
> variant<foo,int> a=foo(....);
> variant<foo,int> b=foo(....);
> a=b;
>
> we will never end up with an int in a?
correct.
> If that's the case, then maybe
> I missed something in the documentation.
>

This behavior is stated here:
http://www.boost.org/doc/libs/1_35_0/doc/html/boost/variant.html#id978547-bb

The discussion here
http://www.boost.org/doc/libs/1_35_0/doc/html/variant/design.html#variant.design.never-empty.problem
distinguishes between same-type and different-type assignments, too.

In Christ,
Steven Watanabe


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk