Daniel Frey wrote:
> Fernando Cacciola wrote:
>> My main argument is that if those were allowed, you could write:
>>
>> optional<int> opt ;
>> opt = 1 ;
>> int i = *opt ;
>>
>> and the assymetry didn't look right to me.
>
> I agree that this looks wrong. What about this syntax:
>
> optional<int> opt;
> *opt = 3;
> int i = *opt;
> opt->foo();
>
This was exactly the way the originally submmited optional<> worked.
I dropped it becasue reviweres thought that (*opt)=3 would lead to
undefined behaviour just as if *opt were an rvalue.
I realized that with true pointers, for instance, (*opt)=3 is in fact
undefined behaviour, so I replace it with .reset()

Fernando Cacciola



_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to