ref tuples

Brad Anderson eco at gnuk.net
Wed Jul 3 09:29:06 PDT 2013


On Wednesday, 3 July 2013 at 11:54:39 UTC, Artur Skawina wrote:
> On 07/03/13 02:22, Brad Anderson wrote:
>> C++11's std::tuple includes a function std::tie that takes 
>> references to the arguments and returns a tuple that maintains 
>> the references to the arguments.
>> 
>> Along with the usual cases where you'd want reference 
>> semantics it also enables this interesting construct for 
>> unpacking tuples.
>> 
>> int a, b;
>> tie(a, b) = make_tuple(1, 2);
>> 
>> assert(a == 1 && b == 2);
>> 
>> Is there any way to do something similar with 
>> std.typecons.Tuple?
>
> Well, aliases can be used to get a similar effect.
>
>    template tie(A...) { alias tie = A; }
>    tie!(a, b) = tuple(1, 2);
>
> artur

That won't work.  a and b aren't held as references (also you 
passed them as type parameters :P).


More information about the Digitalmars-d-learn mailing list