string initialization question.
Steven Schveighoffer
schveiguy at yahoo.com
Fri Jul 30 10:14:45 PDT 2010
On Fri, 30 Jul 2010 12:46:20 -0400, bearophile <bearophileHUGS at lycos.com>
wrote:
> Steven Schveighoffer:
>> > char[] divider = new char[5];
>> > divider[] = '-';
>>
>> That assigns 0xff to all divider chars, and then assigns '-'. I think
>> there's a way to do it without the initial assignment.
I was wrong, I looked through the runtime and did not find such a function.
I think I may have read it in my copy of TDPL that I reviewed.
In any case, I think D deserves a way to do that.
>
> In past there was some way to do that:
> typedef char mchar = '-';
> mchar[] divider = new mchar[5];
As a way to initialize an array, this is horrible :)
> Now you have to initialize the dynamic array two times (using a char
> struct with alias this is probably not a good idea).
> I have shown this problem, but I think Walter was not interested. Maybe
> LDC will able to optimize away the first initialization, I have an
> enhancement request for LLVM.
I think a function to do it is fine, like makeArray('-', 5);
-Steve
More information about the Digitalmars-d-learn
mailing list