Why std::optional
(std::experimental::optional
in libc++ at the moment) does not have specialization for reference types (compared with boost::optional
)?
I think it would be very useful option.
Is there some object with reference to maybe already existing object semantics in the standard library?
When n3406 (revision #2 of the proposal) was discussed, some committee members were uncomfortable with optional references. In n3527 (revision #3), the authors decided to make optional references an auxiliary proposal, to increase the chances of getting optional values approved and put into what became C++14. While optional didn't quite make it into C++14 for various other reasons, the committee did not reject optional references and is free to add optional references in the future should someone propose it.