|
Boost : |
From: David Abrahams (dave_at_[hidden])
Date: 2003-10-09 08:28:14
"brock" <brock.peabody_at_[hidden]> writes:
> ----- Original Message -----
> From: "E. Gladyshev" <egladysh_at_[hidden]>
>
> [...]
>
>> What is the rationale for basic guarantees?
>
> No resources are leaked and class invariants are maintainted.
>
>> Let's say that there is an assignment exception
>> and varaint<t1,t2> has one of
>> the value-initialized types, t1 or t2 now.
>> What do you normally do with that?
>
> I don't know what you would want to do, but my understanding is that if an
> exception has been thrown from an operation on an object, and that operation
> does not make the basic guarantee, the results of subsequent operations on
> that object
or any other part of the program.
> are undefined - it might not even be safe to destroy it.
or do anything else.
-- Dave Abrahams Boost Consulting www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk