[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: taming the shrew, a.k.a. structure
david@dfanning.com (David Fanning) wrote:
> > temp = myStruct.array1
> > myStruct.array1 = ptr_new( (*myStruct.array1)[0:1024] )
> > ptr_free, temp
>
> This really becomes nothing more than this:
>
> *myStruct.array1 = (*myStruct.array1)[0:1024]
>
> There is no need to free the old pointer, make
> a new one etc. Pointers are like IDL variables
> in this respect. They *always* point to the
> current thing you have pointed them too.
That's a useful thing to know. I didn't realize that IDL would do that
for you. I guess coming from the world of C, my default reaction is to
think that pointers are static and you have to make sure to explicitly
resize them appropriately if that's what you want to do. I guess that
works with all variables in C, but I'd gotten used to regular variables
not being static.
Well, guess I can shut my brain off for the day since I've already
learned something new. =)
Todd