Boost logo

Boost :

Subject: Re: [boost] Feature request: variant::view
From: Klemens Morgenstern (klemens.morgenstern_at_[hidden])
Date: 2016-06-19 09:54:24


Am 19.06.2016 um 15:31 schrieb TONGARI J:
> Hi,
>
> Sometimes we need to view a value as a variant and we don't want to copy
> the value into a variant.
>
> It'd be great if there's a variant::view that works like a variant but
> holds a reference to the value instead.
>
> The constructor should allow any reference to the types as in the variant,
> and a constructor that takes a reference to the variant, e.g.
>
> template<class T1, class T2...>
> class variant<T1, T2...>::view
> {
> view(T1&);
> view(T2&);
> ...
> view(variant&);
> };
>
> And we can use apply_visitor/get on a view as on a variant.
>
> Thoughts?

Why not boost::variant<T1*, T2*> ?

I guess boost::variant<boost::none, T1&, T2&> would also work
(boost::none, if it needs to be default-constructible)

Or do you need to use the same visitors?
>
> Thanks.
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>


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