Tuple assignment

Walter Bright newshound2 at digitalmars.com
Wed Oct 6 23:08:49 PDT 2010


If expr represents a tuple, we (Andrei and I) were thinking about the syntax:

     auto (a, b, c, d) = expr;

being equivalent to:

     auto t = expr; auto a = t[0]; auto b = t[1]; auto c = t[2 .. $];

You can also do this with arrays, such that:

     float[3] xyz;
     auto (x, y, z) = xyz;

The Lithpers among you will notice that this essentially provides a handy 
car,cdr shortcut for tuples and arrays:

     auto (car, cdr) = expr;


More information about the Digitalmars-d mailing list