Associative Array Initializers

Bill Baxter dnewsgroup at billbaxter.com
Thu Jan 25 23:17:52 PST 2007


Kevin Bealer wrote:
> Bill Baxter wrote:
>> Kevin Bealer wrote:
>>> Bill Baxter wrote:
>>>> Serg Kovrov wrote:
>>>>> Frits van Bommel wrote:
>>>>>> No, that's one of the big missing things.
>>>>>
>>>>> Exactly!
>>>>>
>>>>
>>>> Seems like with tuples now it might be possible to make a function 
>>>> that would do the trick:
>>>>
>>>> int[char[]] months = AA("Jan", 1, "Feb", 2, "Mar", 3);
>>>>
>>>> This could be another interesting challenge akin to Andrei's max() 
>>>> challenge.  Write a function that constructs an AA from it's 
>>>> arguments using the "best" types.
>>>>
>>>> For that matter it would be interesting to see a template which 
>>>> constructs an array using the best type to hold the arguments (as 
>>>> opposed to just the type of the first argument).
>>>>
>>>> --bb
>>>
>>> I don't know why all this syntax is needed; in particular, without 
>>> the a.dup, it crashes.  I don't know why -- it might be a bug or just 
>>> a bad assumption on my part.
>>
>> make it 'inout a', maybe?
>>
>> --bb
> 
> I haven't checked to see whether that works - but even if it does, I 
> still don't see *why* it's more legal.
> 
> Kevin

Well it doesn't work.  You can't just say inout a, and since you don't 
know the type you can't use "inout Type a".
But looking at it again, I'm not sure why I thought that would work in 
the first place.

--bb




More information about the Digitalmars-d mailing list