just a few small questions
    Jarrett Billingsley 
    kb3ctd2 at yahoo.com
       
    Tue Apr 18 17:11:56 PDT 2006
    
    
  
"MM" <MM_member at pathlink.com> wrote in message 
news:e23tmv$1gaq$1 at digitaldaemon.com...
> Why is wrong with using a Global? When I need an array for the whole time 
> and
> more than half of the subs need to access it, I just don't want to use 
> those
> annoying pointers the whole time :).. how is this done in D?
Well, if you're programming in a C-style fashion, where you just have a 
bunch of global data and a bunch of functions to manipulate it.. I suppose 
it's kind of _messy_ and certainly not my preferred method, but there's 
nothing stopping _you_ from doing it :)
One of the problems of using a large global array is that it's allocated in 
the static data segment.  This isn't a problem if you just define
int[500][500] x;
But if you initialize any of it statically:
int[500][500] x = [0 : [0 : 1]];
(which means set x[0][0] = 1)
It makes the EXE size jump up quite a bit.  In this case, by about 1MB.
You can get around this by using static module constructors though:
int[500][500] x;
static this()
{
    x[0][0] = 1;
} 
    
    
More information about the Digitalmars-d-learn
mailing list