Creating variable name with variables
BCS
BCS at pathlink.com
Mon Apr 23 11:46:30 PDT 2007
okibi wrote:
> Hello,
>
> I was wondering if it is possible to create a variable name with other variables. For example:
>
> char[] left = "num1";
> char[] right = "num2";
>
> char[] num1num2 = "doesn't matter what this equals";
>
> How would I create the variable with the values of the first two variables?
>
> Thanks!
you can't unless left and right are const. If they are you have several
options:
mixin("char[] "~left~right~";")
then use mixin(left~right) for the variable
another option is a total hack
template Value(T, char[] str) { T Value; }
Value!(char[], left~right) = "hello";
writef("%s\n", Value!(char[], left~right));
I haven't actually tried that usage, but you can make it work for some
cases. The advantage of it is that you can do it with D v1.0
More information about the Digitalmars-d-learn
mailing list