Initialization of the Associative arrays
    BCS 
    ao at pathlink.com
       
    Mon Jul 14 17:19:59 PDT 2008
    
    
  
Reply to Stewart,
> "Don" <nospam at nospam.com.au> wrote in message
> news:g5fmrg$e7o$1 at digitalmars.com...
> 
>> baleog wrote:
>> 
>>> Hello,
>>> 
>>> Is it a bug that i can't do like this:
>>> int[string] x = ["11":11, "1":1];
> <snip>
> 
>> No. You need to tell the compiler that you're using dynamic, not
>> static arrays. Just add [] after the first entry.
>> 
>> int[string] x = ["11"[]:11, "1":1];
>> 
> If it isn't a bug, it's certainly a design silliness:
> - that array literals take their type from the first element, rather
> than
> the lowest common denominator
> - that there aren't static initialisers for AAs as there are for LAs
> Stewart.
> 
I think much of this might come from the need to be able to eyeball parse 
the code
auto a = [ .... 16 different function calls ...];// what is the type of a?
I think as long as the type of an array literal isn't from the type of the 
assigned the current solution is about as good as it will get.
    
    
More information about the Digitalmars-d-learn
mailing list