> On Mar 8, 2018, at 1:48 PM, Sven Barth via fpc-pascal
> <email@example.com> wrote:
> You could use an include file containing both the declaration and
> implementation controlled by compiler defines together with a macro for the
> type name.
That’s a nice trick. If those records get adopted something “managed record”
would be really cool. They’re pretty new and I’m not sure if they’re being used
> No, this doesn't beg the question, because Object Pascal classes are designed
> in the principle to reduce on the heap. Changing this would not only mean
> quite some changes in the compiler/RTL with no real gain, but it would also
> change a core aspect of the Object Pascal language.
What’s the principle that says classes should always be on the heap? The old
object style classes used to be on the stack but for some reason they decided
change this to heap only. I didn’t really think much about it until I saw how
c++ had this optional and then it occurred to me all the Create…Free blocks
I’ve used so often that could just be on the stack instead. Point taken about
it being lots of work to implement though.
Btw can you override the memory manager used for class constructors? If a class
reused the same block of memory that would have a similar effect and useful for
tight loops where you’re allocating/deallocating memory over and over again.
fpc-pascal maillist - firstname.lastname@example.org