|
|
Bill Hails <bil### [at] europeyahoo-inccom> wrote:
> Tim McMurdo wrote:
>
> > The rigging macro changes I made are really speeding things up now. I
> > think I will add one more feature. I think I need to add the ability to
> > undefine all of the variables and reset their values to the default values
> > at the end of the macro.
> >
>
> I'm not an expert, but It appears to be the case that all macro arguments
> are call-by-reference (it would make sense for large complex arguments)
> so you need to ensure that all of the arguments are not lvalues
> (couldn't appear on the left hand side of an '=' assignment)
> so if you do things like
> MyMacro(INTEGER_VALUE + 0, transform { MyTransform }, object { MyObject })
> rather than just
> MyMacro(INTEGER_VALUE, MyTransform, MyObject)
> then copies are taken and the arguments aren't directly assigned to.
>
> I reserve the right to be wrong, so someone may correct me.
>
Bill,
Thank you for these comments. I am unfortunately a self taught programmer
and I fear I have many bad habits. This sounds like good advice from you
and if correct would solve problems I have had with my code in the past.
I often use the opportunity to study the sample code shared in other peoples
scene files. Some times I struggle with the complexity of some code, but
find that I learn best by example. I hafve often thought that there should
be an area in the news group set aside for questions on encouraging good
SDL programming habits. Where theory and exaples could be shared. I find
the times this naturally occurs in the New, General or Advanced areas are
very helpful. Often though, the theory or deep explanations go over my
head.
>> I greatly admire your enormous persistance with this project, and it looks
> fantastic, I just hope you back up your code :-)
>
Thank you for the encouragement. I do back up my code. I burn it to a CD
monthly, though in time of heavy work, I should probably increase that to
weekly.
Tim
Post a reply to this message
|
|