data containers
    torhu 
    no at spam.invalid
       
    Sat Jul  5 06:48:34 PDT 2008
    
    
  
Moritz wrote:
> Thanks again, torhu. I understand multidimensional arrays (at least I 
> think so :-) ), and that these arrays contain pointers to other arrays.
> 
> I thought the .length() operation would make the array static in its 
> size, thats why I didnt try this earlier.
> 
> But after reading what you wrote, I still dont see why I cant go without 
> the length(), by just using ~=, like:
> 
> ScreenElement[][]	layer_map;
> 
> int add_element(ScreenElement new_element, uint layer)
> {
> 	layer_map[layer] ~= new_element;
> }
> 
> You wrote setting the length and using ~= both increase the size of the 
> array, but I get an ArrayBoundsError when using the ~=.
That probably means you're not doing quite what you think you're doing. 
  Try adding an assert and see if it gets triggered:
int add_element(ScreenElement new_element, uint layer)
{
	assert(layer < layer_map.length, "there's no layer with that number");
	layer_map[layer] ~= new_element;
}
> 
> And thank you all for your help so far!!!!
> 
My pleasure.
    
    
More information about the Digitalmars-d-learn
mailing list